forked from Telos4/RoboRally
finished instructions for robot assembly and setup. now for some polishing
This commit is contained in:
parent
9bb8bb805d
commit
839f5c85c3
|
@ -37,19 +37,23 @@ For the camera based position detection of the robots you will need:
|
||||||
Assemble the chassis according to the instructions provided by adafruit ([see here](https://learn.adafruit.com/tri-layer-mini-round-robot-chassis-kit)).
|
Assemble the chassis according to the instructions provided by adafruit ([see here](https://learn.adafruit.com/tri-layer-mini-round-robot-chassis-kit)).
|
||||||
|
|
||||||
### Soldering the electronics
|
### Soldering the electronics
|
||||||
1. Solder on two rows of 8 male pin headers to the D1 mini
|
####Preparing Wemos D1 mini and shields
|
||||||
![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/d1_mini_pins.jpg)
|
|
||||||
|
|
||||||
2. Solder on two rows of 8 female pin headers to the battery shield
|
| Description | Image|
|
||||||
|
|--------------|---------------|
|
||||||
|
| Solder on two rows of 8 male pin headers to the D1 mini | ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/d1_mini_pins.jpg) |
|
||||||
|
| Solder on two rows of 8 female pin headers to the motor shield . | ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_shield_1.JPG) ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_shield_2.JPG)|
|
||||||
|
| Also solder a single row of bent pins to the motor shield. Make sure they are soldered on the right way around.| ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_shield_3.JPG)|
|
||||||
|
| Solder a jumper to the motor shield to connect the RTS and 3V pin. This will become important later on. Also solder the I2C bridge. | ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_shield_jumper.jpeg)|
|
||||||
|
| Solder on two rows of 8 female pin headers with long pins to the battery shield | ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/battery_shield_1.JPG) ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/battery_shield_2.JPG) |
|
||||||
|
| Cut off the tips of the long pins such that the battery shield nicely fits into the motor shield | ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/battery_shield_3.JPG) ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/battery_shield_4.JPG) ![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/battery_shield_5.JPG) |
|
||||||
|
|
||||||
3. Solder on two rows of 8 female pin headers to the motor shield as well as a single row of bent pins. Make sure they are soldered on the right way around.
|
#### Connecting battery shield and motor shield for motor power supply
|
||||||
4. In addition solder a jumper to the motor shield to connect the RTS and 3V pin. This will become important later on. Also solder the I2C bridge.
|
In the next step we connect the battery connector pins of the battery shield to the + and - pins of the motor shield. In addition we will add a connector to the motor shield where we can plug in the battery. Here is a schematic:
|
||||||
|
|
||||||
5. In the next step we connect the battery connector pins of the battery shield to the + and - pins of the motor shield. In addition we will add a connector to the motor shield where we can plug in the battery. Here is a schematic:
|
|
||||||
![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_bb.jpg)
|
![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_bb.jpg)
|
||||||
*Note: I added a new connector instead of using the one already on the battery shield because the plug of my battery wouldn't fit in the on on the shield*
|
*Note: I added a new connector instead of using the one already on the battery shield because the plug of my battery wouldn't fit in the on on the shield*
|
||||||
|
|
||||||
6. First, solder two wires to the + and - pins of the battery shield and isolate them with heat shrink:
|
- First, solder two wires to the + and - pins of the battery shield and isolate them with heat shrink:
|
||||||
|
|
||||||
| Description | Image|
|
| Description | Image|
|
||||||
|--------------|---------------|
|
|--------------|---------------|
|
||||||
|
@ -60,8 +64,7 @@ Assemble the chassis according to the instructions provided by adafruit ([see he
|
||||||
| Heat the shrink tube with a lighter | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_6.jpeg) |
|
| Heat the shrink tube with a lighter | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_6.jpeg) |
|
||||||
| This is how the battery shield should look like with the two wires | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_6.5.jpeg) |
|
| This is how the battery shield should look like with the two wires | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_6.5.jpeg) |
|
||||||
|
|
||||||
|
- Next, we create a connector for the female JST 2-Pin connector for plugin in the battery:
|
||||||
7. Next, we create a connector for the female JST 2-Pin connector for plugin in the battery:
|
|
||||||
|
|
||||||
| Description | Image|
|
| Description | Image|
|
||||||
|--------------|---------------|
|
|--------------|---------------|
|
||||||
|
@ -71,9 +74,13 @@ Assemble the chassis according to the instructions provided by adafruit ([see he
|
||||||
| Cover both wires with heat shrink | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_10.jpeg) |
|
| Cover both wires with heat shrink | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_10.jpeg) |
|
||||||
| Solder the wires to the motor shield, paying attention to the polarity *(make sure it matches the polarity of your batteries!)* | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_11.jpeg) |
|
| Solder the wires to the motor shield, paying attention to the polarity *(make sure it matches the polarity of your batteries!)* | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_11.jpeg) |
|
||||||
|
|
||||||
8. Now, stack the battery shield on top of the motor shield and solder the battery connector:
|
- Now, stack the battery shield on top of the motor shield and solder the battery connector:
|
||||||
|
|
||||||
| Description | Image|
|
| Description | Image|
|
||||||
|---|---|
|
|---|---|
|
||||||
| This is how it should look like in the end. Make sure all of the exposed wires are covered in heat shrink | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_12.jpeg) ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_14.jpeg) |
|
| Connect the + pin of the battery shield to the + pin of the motor shield. Be sure to isolate the connection with heat shrink. Then repeat the same for the - pins. | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_15.JPG)|
|
||||||
|
| This is how it should look like in the end. | ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_12.jpeg) ![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_14.jpeg) |
|
||||||
|
|
||||||
|
### Next steps
|
||||||
|
|
||||||
|
This concludes the main steps for the robot assembly. The next step is to fix a problem with the firmware on the motor shield in order to use it via I2C. Head over to [2_MOTOR_SHIELD_FIX.md](https://imaginaerraum.de/git/Telos4/RoboRally/src/branch/master/docs/2_MOTOR_SHIELD_FIX.md) for the instructions.
|
||||||
|
|
|
@ -79,9 +79,11 @@ Use some jumper cables to connect the motor shield and the D1 mini in the follow
|
||||||
|GND | GND |
|
|GND | GND |
|
||||||
|
|
||||||
![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_firmware_update_bb.jpg)
|
![D1 mini](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_firmware_update_bb.jpg)
|
||||||
|
![Motor shield jumper](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_shield_fix_4.JPG)
|
||||||
|
|
||||||
### Flash the new firmware on the STM32:
|
### Flash the new firmware on the STM32:
|
||||||
- Connect the D1 mini to your PC using a micro USB cable.
|
- Connect the D1 mini to your PC using a micro USB cable.
|
||||||
|
![Motor shield jumper](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_shield_fix_1.JPG)
|
||||||
- Check if you can communicate with the STM32:
|
- Check if you can communicate with the STM32:
|
||||||
```
|
```
|
||||||
$ stm32flash /dev/ttyUSB0
|
$ stm32flash /dev/ttyUSB0
|
||||||
|
@ -154,5 +156,7 @@ Wrote and verified address 0x08000be8 (100.00%) Done.
|
||||||
Finally, you can remove the wire between RTS and 3V.
|
Finally, you can remove the wire between RTS and 3V.
|
||||||
At this point, please make sure that the I2C bridge on the Wemos Motor shield is connected. This is necessary for I2C to work correctly.
|
At this point, please make sure that the I2C bridge on the Wemos Motor shield is connected. This is necessary for I2C to work correctly.
|
||||||
|
|
||||||
|
### Next steps
|
||||||
|
Continue with the instructions in the file [3_ROBOT_SETUP.md](https://imaginaerraum.de/git/Telos4/RoboRally/src/branch/master/docs/3_ROBOT_SETUP.md) to complete the setup of the robot.
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# Robot setup
|
# Robot setup
|
||||||
|
|
||||||
This file explains how to setup the software for the robots. It assumes that you already assembled your robot according to the instructions in 1_ASSEMBLY.md and that you updated the firmware of the motor shield as described in 2_MOTOR_SHIELD_FIX.md.
|
This file explains how to setup the software for the robots. It assumes that you already assembled your robot according to the instructions in [1_ASSEMBLY.md](https://imaginaerraum.de/git/Telos4/RoboRally/src/branch/master/docs/1_ASSEMBLY.md) and that you updated the firmware of the motor shield as described in [2_MOTOR_SHIELD_FIX.md](https://imaginaerraum.de/git/Telos4/RoboRally/src/branch/master/docs/2_MOTOR_SHIELD_FIX.md).
|
||||||
|
|
||||||
Before we start, stack the D1 mini ontop of the battery shield and connect it to your computer using a micro USB cable:
|
Before we start, stack the D1 mini ontop of the battery shield and connect it to your computer using a micro USB cable:
|
||||||
![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_13.jpeg)
|
![Battery Shield Wires](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/motor_battery_stack_13.jpeg)
|
||||||
|
@ -8,7 +8,7 @@ Before we start, stack the D1 mini ontop of the battery shield and connect it to
|
||||||
|
|
||||||
### Flash Micropython to the Wemos D1 mini
|
### Flash Micropython to the Wemos D1 mini
|
||||||
The first step is to flash the micropython firmware to the D1 mini.
|
The first step is to flash the micropython firmware to the D1 mini.
|
||||||
You can download the latest micropython firmware for the ESP8266 from [here](http://micropython.org/download#esp8266). I used version _esp8266-20190125-v1.10.bin_
|
You can download the latest micropython firmware for the ESP8266 from [here](http://micropython.org/download#esp8266). I used version _esp8266-20190125-v1.10.bin_ but you can also use a more recent version.
|
||||||
The firmware can be flashed on the D1 mini using the following commands:
|
The firmware can be flashed on the D1 mini using the following commands:
|
||||||
```
|
```
|
||||||
$ esptool.py --port /dev/ttyUSB0 erase_flash
|
$ esptool.py --port /dev/ttyUSB0 erase_flash
|
||||||
|
@ -116,4 +116,16 @@ Now you're all set up for controlling your robot remotely via wifi.
|
||||||
You can control the robot by sending commands to the robot as a string containing `'(u1, u2)\n'`, where `u1` and `u2` are floats in the range `[-1.0, 1.0]`, e.g. `'(0.3, -0.6)\n'`.
|
You can control the robot by sending commands to the robot as a string containing `'(u1, u2)\n'`, where `u1` and `u2` are floats in the range `[-1.0, 1.0]`, e.g. `'(0.3, -0.6)\n'`.
|
||||||
Have a look at the `keyboard_controller.py` script to see how this works in python.
|
Have a look at the `keyboard_controller.py` script to see how this works in python.
|
||||||
|
|
||||||
|
### Isolating the electronics
|
||||||
|
Since the mounting plates of the robot are made of metal it is a good idea to put some isolation around the electronics. You can use some isolation tape to cover the exposed connections:
|
||||||
|
![Isolation tape](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/isolation_tape_2.JPG)
|
||||||
|
You can also add some velcro tape to the electronics, the battery and the robot to easily attach and remove the microcontroller from the robot.
|
||||||
|
![Velcro tape](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/velcro_tape_2.jpeg)
|
||||||
|
![Velcro tape](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/velcro_tape_3.jpeg)
|
||||||
|
|
||||||
|
### Charging the battery
|
||||||
|
In order to charge the battery of the robot just plug a micro USB cable into the USB port of the battery shield.
|
||||||
|
![Velcro tape](https://imaginaerraum.de/git/Telos4/RoboRally/raw/branch/master/docs/images/charging.jpeg)
|
||||||
|
|
||||||
|
### Next steps
|
||||||
The next step is to setup the position detection using ROS. For this see the 4_ROS_SETUP.txt
|
The next step is to setup the position detection using ROS. For this see the 4_ROS_SETUP.txt
|
Loading…
Reference in New Issue
Block a user