Team:Aachen/Notebook/Engineering/WatsOn
From 2014.igem.org
(→Software) |
(→DIY: How To Build Your Own WatsOn) |
||
Line 138: | Line 138: | ||
==Technical Components== | ==Technical Components== | ||
- | If you want to create your own ''WatsOn'' first take a look at the following list of necessary components. All parts except the laser | + | If you want to create your own ''WatsOn'' first take a look at the following list of necessary components. All parts except the laser cut acrylic glass can be readily purchased and do not require further adjustments. |
'''All needed components, their quantities and prices for creating your own ''WatsOn''''' | '''All needed components, their quantities and prices for creating your own ''WatsOn''''' | ||
Line 206: | Line 206: | ||
|} | |} | ||
- | You can find more economical information | + | You can find more economical information on ''WatsOn'' and on the project on our [https://2014.igem.org/Team:Aachen/PolicyPractices/Economics Economical View] page. |
- | For building our '''WatsOn''' we used some tools that are not included in the list of necessary components because we assume that they are already available. We used a soldering iron to solder the resistors to the LEDs and fix the headers on the mount of the LEDs. For building electrical circuits our multimeter was very helpful. Furthermore we applied special glue for plastic to hold the acrylic glass in place. All other components were fixed with tape or hot glue which is versatile and can be removed quickly during alignment of components. | + | For building our '''WatsOn''' we used some tools that are not included in the list of necessary components because we assume that they are already available. We used a soldering iron to solder the resistors to the LEDs and fix the headers on the mount of the LEDs. For building electrical circuits our multimeter was very helpful. Furthermore, we applied special glue for plastic to hold the acrylic glass in place. All other components were fixed with tape or hot glue which is versatile and can be removed quickly during alignment of components. |
==Breadboard== | ==Breadboard== | ||
Line 221: | Line 221: | ||
| [[File:Aachen_Device_1.jpg|300px]] || Start building your own ''WatsOn'' by assembling the base plate, the sides and the interior wall. | | [[File:Aachen_Device_1.jpg|300px]] || Start building your own ''WatsOn'' by assembling the base plate, the sides and the interior wall. | ||
|-style="border-top: 2px #808080 solid;" | |-style="border-top: 2px #808080 solid;" | ||
- | | [[File:Aachen_Device_2_3.jpg|350px] [File:Aachen_Device_.3jpg|300px]] || Fix the Peltier heater on the back of the aluminum block and place it in the hole of the interior wall.<html><br/></html>Arrange the 4x4 | + | | [[File:Aachen_Device_2_3.jpg|350px] [File:Aachen_Device_.3jpg|300px]] || Fix the Peltier heater on the back of the aluminum block and place it in the hole of the interior wall.<html><br/></html>Arrange the 4x4 450 nm LEDs and the 2x3 480 nm LEDs |
|-style="border-top: 2px #808080 solid;" | |-style="border-top: 2px #808080 solid;" | ||
- | | [[File:Aachen_Device_7.jpg|350px]] || Assemble the camera holder with the camera and the corresponding filter slide on the lower part. | + | | [[File:Aachen_Device_7.jpg|350px]] || Assemble the camera holder with the camera and the corresponding filter slide on the lower part. Above the camera, you can place the temperature sensor for measuring the indoor temperature. Finally, put the fan on the back of the camera holder. |
|-style="border-top: 2px #808080 solid;" | |-style="border-top: 2px #808080 solid;" | ||
| [[File:Aachen_Device_8.jpg|350px]] || Connect the electronic components on the outside and the inside according to the wiring diagramm. | | [[File:Aachen_Device_8.jpg|350px]] || Connect the electronic components on the outside and the inside according to the wiring diagramm. | ||
Line 231: | Line 231: | ||
| [[File:Aachen_Device_9.jpg|350px]] || Position the front panel and insert the drawer. | | [[File:Aachen_Device_9.jpg|350px]] || Position the front panel and insert the drawer. | ||
|-style="border-top: 2px #808080 solid;" | |-style="border-top: 2px #808080 solid;" | ||
- | | [[File:Aachen_Device_10.jpg|350px]] || Place the temperature sensor | + | | [[File:Aachen_Device_10.jpg|350px]] || Place the temperature sensor measuring the aluminum block temperature directly on the block and put the back panel in front of it. |
|-style="border-top: 2px #808080 solid;" | |-style="border-top: 2px #808080 solid;" | ||
- | | [[File:Aachen_Device_6.jpg|350px]] || Setup the power supply<sup>[https://2014.igem.org/Team:Aachen/Notebook/Engineering/WatsOn#fn1 1]</sup> and connect all devices to either | + | | [[File:Aachen_Device_6.jpg|350px]] || Setup the power supply<sup>[https://2014.igem.org/Team:Aachen/Notebook/Engineering/WatsOn#fn1 1]</sup> and connect all devices to either 5 V or 12 V. Plug the USB hub connector into the Raspberry. If you use the GUI locally on the device a mouse and a keyboard need to be attached to the USB hub to navigate on the user interface. Follow the steps described in the section ‘Raspberry Pi - Setup’[https://2014.igem.org/Team:Aachen/Notebook/Engineering/WatsOn#watsondiy]. |
|-style="border-top: 2px #808080 solid;" | |-style="border-top: 2px #808080 solid;" | ||
| [[File:Aachen_Device_11.jpg|350px]] || Mount the device on top of the power supply casing. Add the display and apply some stickers to enjoy your custom-made ''WatsOn''. | | [[File:Aachen_Device_11.jpg|350px]] || Mount the device on top of the power supply casing. Add the display and apply some stickers to enjoy your custom-made ''WatsOn''. | ||
Line 239: | Line 239: | ||
<html> | <html> | ||
- | <sup><span class="anchor" id="fn1"></span>1. By German law only certified electricians may work | + | <sup><span class="anchor" id="fn1"></span>1. By German law only certified electricians may work on 230 V electronics. Therefore, the electrical workshop at our institute created the power supply specifically for our design.<a href="#ref1" title="">↩</a></sup> |
</html> | </html> | ||
Line 247: | Line 247: | ||
In order to get a running linux system on the Raspberry Pi which includes all required components and configurations the following steps have to be considered: | In order to get a running linux system on the Raspberry Pi which includes all required components and configurations the following steps have to be considered: | ||
- | * The | + | * The Raspberry Pi needs an SD card on which the operating system will be installed. Go to the [http://www.raspberrypi.org/downloads/ download page of the Raspberry Pi Foundation ] and select an operating system of your choice - we used Raspbian - or just download the NOOBS package which offers all different operating systems during setup. |
- | * Follow the specific image installation guidelines to install the downloaded system onto your SD | + | * Follow the specific image installation guidelines to install the downloaded system onto your SD card. |
- | * Once finished insert the SD | + | * Once finished, insert the SD card in the slot on the Raspberry Pi board, connect a monitor over HDMI, plug in a USB mouse and keyboard and start the Raspberry Pi by connecting it to the micro USB power supply. Follow the installation instructions; these should be straightforward. After the installation you will be shown the desktop of your new system. |
- | * To be able to use the Raspberry Pi | + | * To be able to use the Raspberry Pi camera you need activate it over a terminal. Search for a desktop icon labeled "LxTerminal", double click it and a terminal will appear where you can enter commands which will be executed after you press Return. Enter "raspi-config", press Return and activate the camera with the displayed corresponding option. |
- | * Download the source files for the backend server and the graphical user interface (GUI). To be able to compile the GUI you need to install the Qt5-libraries. Follow | + | * Download the source files for the backend server and the graphical user interface (GUI). To be able to compile the GUI, you need to install the Qt5-libraries. Follow [http://qt-project.org/wiki/Native_Build_of_Qt5_on_a_Raspberry_Pi this guide] on how to get the Qt source code, compile it and setup your environment correctly. Make sure that your Raspberry Pi is constantly running, since this process takes some time and must not be interrupted. |
- | * With the Qt-libraries installed open a terminal and change to the directory where you put the source for the GUI (command "cd [path to source]"). Call "qmake" followed by "make" and you will start compilation of the program. When finished you can launch the GUI with the command "./igem_GUI". | + | * With the Qt-libraries installed, open a terminal and change to the directory where you put the source for the GUI (command "cd [path to source]"). Call "qmake" followed by "make" and you will start compilation of the program. When finished, you can launch the GUI with the command "./igem_GUI". |
- | * The backend - that will establish the connection between hardware and the user interface - requires you to install additional packages for | + | * The backend - that will establish the connection between hardware and the user interface - requires you to install additional packages for Python which is a high-level general-purpose programming language and an interpreter that will ship with your system. Open the README in the "Backend" directory and follow the instructions. |
* You now should be able to launch the backend by calling "python takeimageserver.py &" from the terminal. | * You now should be able to launch the backend by calling "python takeimageserver.py &" from the terminal. | ||
- | * Now start the GUI. An input dialog will show up asking you to provide the IP address of the backend server | + | * Now start the GUI. An input dialog will show up asking you to provide the IP address of the backend server or the Raspberry Pi, respectively. Since you are running the GUI and the backend on the same device, just press Enter to select the default entry which is the IP of the local host. After a few seconds, when the connection to the backend server has been established, the user interface gets enabled and you can start to take images and time lapse shootings. If the image is not focused you need to adjust the lense in front of the camera by rotating it. For the full list of features refer to the [https://2014.igem.org/Team:Aachen/Notebook/Engineering/WatsOn#watsonsoftware Software section] of this page. |
- | In case you want to run the GUI on a remote machine e.g. your notebook follow these additional steps: | + | In case you want to run the GUI on a remote machine, e.g. your notebook, follow these additional steps: |
- | * Install the | + | * Install the [http://qt-project.org/ Qt-libraries and QtCreator] on your system. This is just an installation - you do not have to compile it. Get the source code for the GUI and open the ".pro" file with QtCreator. After importing the project and selecting a built directory, click the green arrow on the left side. Compilation is started and as soon as it is finished the GUI will start. |
- | * In order to be able to connect to the Raspberry Pi you need to be connected to the same network. Therefore make sure the Raspberry Pi | + | * In order to be able to connect to the Raspberry Pi you need to be connected to the same network. Therefore, make sure the Raspberry Pi USB wifi stick is working properly (see [https://2014.igem.org/Team:Aachen/Notebook/Engineering/WatsOn#pitrouble Troubleshooting & useful links]), and that you reside in the same network. Start the backend server on the Raspberry Pi. It will print the IP address on start up which you must enter in the GUI on your device running the GUI. Now you should be able to use all the features as if running the GUI on the Raspberry Pi. |
=== Troubleshooting & Useful Links === | === Troubleshooting & Useful Links === | ||
+ | <span class="anchor" id="pitrouble"></span> | ||
- | * Display resolution: | + | |
+ | * Display resolution: If your connected display is not working properly you may refer to | ||
** http://elinux.org/RPiconfig#Video | ** http://elinux.org/RPiconfig#Video | ||
** http://www.raspberrypi.org/forums/viewtopic.php?f=29&t=24679 | ** http://www.raspberrypi.org/forums/viewtopic.php?f=29&t=24679 |
Revision as of 08:27, 17 October 2014
|
|
|
|