===== Group Project - Group1 - Theme: Traffic ===== ---- Presentation Video: [[https://www.youtube.com/watch?v=FXGe5TswCAI&list=UUzhauk6375F5jhWDX10hYxA|Link]] ===== Introduction ===== ---- Everyone travels almost daily using different ways and always get into the same problem, Traffic! They try to navigate through crowded streets or in a new area, feel the need to communicate on long trips (or while stuck in a traffic jam) and maybe find it problematic to tune the audio signal of their car stereo when trying to simultaneously move a vehicle on the street. But traffic does not always have to trouble one. If going by car, bus, or traveling with a bicycle there are always ways to make life easier. Within this group project we made the atempt to do this by developing a novel system to navigate through traffic without the need of continously watching a display (can draw attention away from the street) or listening to audio comments (requires a quite environment). ---- ===== Ideation Workshop ===== ---- But what exactly was our idea and how did we get inspired? First we created a Domain-, multiple Subdomain- and Technologycards like described in the {{:basic_content:inspirationcards:p2-halskov.pdf|Inspirationcard paper}} and conducted an Ideation Workshop. The created cards are listed below: ***Domain Card:** * {{ideation_workshop:group1:domaincardTraffic_updated.pdf|Domain Card - Traffic}} ***Subdomain Cards:** *{{ideation_workshop:group1:subdomaincardnavigation.pdf|Subdomain Card - Navigation}} *{{ideation_workshop:group1:subdomaincardcommunication.pdf|Subdomain Card - Communication}} *{{:ideation_workshop:group1:subdomaincard_trafficjam.pptx| Subdomain Card - Traffic Jam}} *{{:ideation_workshop:group1:subdomaincard_red_light.pptx| Subdomain Card - Red light}} ***Technology Cards:** *{{:ideation_workshop:group1:technologycard_lumigrid.pptx|Technology Card - Lumigrid}} *{{:ideation_workshop:group1:technologycard_streetpong.pptx| Technology Card - Streetpong}} *{{:ideation_workshop:group1:technologycard_hammerhead.pdf| Technology Card - HammerHead Bike Navigation System}} *{{:technologycard_controlcar.pdf| Technology Card - Control car using voice command}} Within the Ideation Workshop, we found the following different ideas: |**Idea 1: Traffic Light Gaming:** || |{{ :ideation_workshop:group1:idea1_trafficlightgaming.jpg?400 |Idea 1: Traffic Light Gaming}}|The idea was in this case to give people the possibility to play games when waiting at a traffic light with their smartphones against people standing on the other side of the street. There already exists a system, were one game is installed in a traffic light post. A smartphone dependent version could provide a higher degree of flexibility and an easier way to keep in contact after finishing a game and crossing the street.| |**Idea 2: Car Message Board:** || |{{ :ideation_workshop:group1:idea2_carmessageboard.jpg?400 |Idea 2: Car Message Board}}|Our second idea was a system with which people can communicate with a dynamic display on the back of their car with drivers behind them. It could enable them to talk with them when stuck in a traffic jam, warn them about problems on the upcoming street parts of which they are aware or display changing advertisements.| |**Idea 3: Bicycle Navigation with Vibration:** || |{{ :ideation_workshop:group1:idea3_bicyclemotorcyclenavigationwithvibration.jpg?400 |Idea 3: Bicycle Navigation with Vibration}}| This idea illustrates a new way of communicating navigation signals to drivers of bicyles. Todays common navigation systems either use screens to display driving istructions, or forward comands via audio signals. Both methods have their disadvantages when beeing used on a two-wheeled craft. The need for looking down on the display can take a drivers focus from the street, whereas audio commands can be overheard when navigating through a noisy environment. Our idea was to use vibration motors in the bikes handlebars instead, to indicate if a person should do a turn to the left or right side. Everytime when a turn should be executed, the handlebar on the side on which the driver is supposed to turn will vibrate in three levels. At first it will vibrate on a low level 100m before the turn, then on a medium level 50m before the turn and on an agressive level when the driver is supposed to turn. U-turns could be signaled with vibrations on both handlebars.| |**Idea 4: Anti-Theft:** || |{{ :ideation_workshop:group1:idea4_antitheft_antimartensystem.jpg?400 |Idea 4: Anti-Theft/Anti-Marten System}}| Our last idea was an Anti-Theft system for bicycles. We thought about using a GPS-Token attached to a bicycle which continously forwards the bikes location. A location can be locked via smartphone app and if the bycicle is moved away afterwards more than e.g 20m from the locked position an alarm will sound. | Eventually we decided to go with **Idea 3: Bicycle Navigation with Vibration**, because all of our group members were convinced that the idea is the most innovative one and that it could really hold the potential to help people a great deal throughout their daily life. ---- ===== Workflow ===== ---- In the following our workflow will be described in short and simple steps. ==== Step 1: Design ==== Our design concept is illustrated in the video below. It shows a cyclist doing a right turn. While the bycicle approaches the courve, the driver perceives vibrations in different levels on his right handlebar. *{{ideation_workshop:group1:bicyclevibrationmotor.zip|Video_DesignConcept}} ==== Step 2: Hardware and Software ==== First we thought about Hard- and Software components necessary to develop our system. We decided to use the below listed parts: ***Hardware:** *Arduino Uno *Bluefruit EZ-Link Shield - Bluetooth Arduino Serial & Programmer ((Bluefruit EZ-Link Shield[[http://www.exp-tech.de/Shields/Wireless/Bluetooth/Bluefruit-EZ-Link-Shield-Bluetooth-Arduino-Serial-Programmer.html]])) *Two compact vibration motors *Battery (9V) *Wires *Android smartphone (4.3+) |{{:ideation_workshop:group1:hardwarecomponents.jpg?450 | Hardware Components}}| |Hardware Components| ***Softwares and Programming libraries:** *Arduino Software ((Arduino Software IDE[[http://arduino.cc/en/main/software]])) *Aptana IDE ((Aptana IDE[[http://www.aptana.com/]])) *Cordova framework ((Cordova framework[[http://cordova.apache.org/]])) *JQuery Mobile ((JQuery Mobile[[http://jquerymobile.com/]])) *Native droid (User interface design) ((Native droid[[http://nativedroid.godesign.ch/]])) *Movable type scripts (GPS calculations) ((Movable type scripts[[http://www.movable-type.co.uk/scripts/latlong.html]])) In terms of the Bluetooth module we looked at a lot of different models and after consideration of multiple factors found out that the Bluefruit EZ-Link Shield has certain advantages (e.g. automatic baudrate configuration). It also offers the best compatibility with the Cordova Framework, which we used for the development of our Android App. \\ ==== Step 3: Soldering & Wiring Arduino ==== *Attachement of the Battery *Attachement of the vibration sensors |{{:ideation_workshop:group1:bikenavi_wiring.png?450 | Circuit Diagram}}| |Circuit Diagram| |{{:ideation_workshop:group1:solderingbattery.jpg?450 | Soldering of the Battery}}| |Soldering of the Battery| |{{:ideation_workshop:group1:wiredarduino.jpg?450 | Wired Arduino}}| |Wired Arduino| |{{:ideation_workshop:group1:closeupwiredarduino.jpg?450 | Wired Arduino Closeup}}| |Wired Arduino Closeup| \\ ==== Step 4 Part I: Programming Arduino ==== *Generation of vibrations depending on the Input via Bluetooth *{{ideation_workshop:group1:vibrationmotors.zip|Video_VibrationMotors}} |{{:ideation_workshop:group1:programmingarduino.jpg?450 | Programming of the Arduino}}| |Programming of the Arduino| |{{:ideation_workshop:group1:testingarduino.jpg?450 | Testing}}| |Testing| \\ ==== Step 4 Part II: Programming Android ==== *Setup Cordova for access of the smartphone bluetooth interface and to get access to the smartphones geolocation data *Send commands to the Arduino via Bluetooth *Use Native Droid for Android like user interface (caused problems; better use another framework next time) |{{:ideation_workshop:group1:03_02_androidprogramming.jpg?450 | Android Programming}}| |Android Programming| |{{:ideation_workshop:group1:03_androidprogramming.png?450 | Cordova Build}}| |Cordova Build| |{{:ideation_workshop:group1:03_01_androidprogramming.png?450 | User-Interface}}| |User-Interface| \\ ==== Step 5: Put the stuff together! ==== *Mount the vibration motors with tape to the handlebars *Mount the Arduino in a bicycle bag on the bikes front *Fixate cables and test the hole system |{{:ideation_workshop:group1:04_00_starttoattachvibrationmotors.jpg?450 | Start to attach vibration motors}}| |Start to attach vibration motors| |{{:ideation_workshop:group1:04_01_attachingvibrationmotorswithfoammaterial.jpg?450 | Attaching vibration motors with foam}}| |Attaching vibration motors with foam| |{{:ideation_workshop:group1:04_02_bandsadded.jpg?450 | Tape added around the handlebars}}| |Tape added around the handlebars| |{{:ideation_workshop:group1:04_03_attachthearduino.jpg?450 | Attachement of the Arduino}}| |Attachement of the Arduino| |{{:ideation_workshop:group1:04_04_cabelingfinished_front.jpg?450 | Cabeling completed (Front)}}| |Cabeling completed (Front)| |{{:ideation_workshop:group1:04_05_cabelingfinished_side.jpg?450 | Cabeling completed (Side)}}| |Cabeling completed (Side)| ==== Step 6: Enjoy the ride! ==== *Test the final prototype |{{:ideation_workshop:group1:fin_01_finalprototype.jpg?450 | Final Prototype}}| |Final Prototype| |{{:ideation_workshop:group1:fin_02_front.jpg?450 | Final Prototype in Action (Front)}}| |Final Prototype in Action (Front)| |{{:ideation_workshop:group1:fin_01_frontcloseup.jpg?450 | Final Prototype Closeup in Action (Front)}}| |Final Prototype Closeup in Action (Front)| ---- ===== Presentation & Source Code ===== ---- *{{ideation_workshop:group1:physicalcomputing_finalpresentation.pdf|Presentation_01_08_14}} *{{ideation_workshop:group1:bikenavi_arduino.zip|Source Arduino}} *{{ideation_workshop:group1:androidclient.zip|Source Android}}