TourRobot: Difference between revisions
No edit summary |
purge |
||
(9 intermediate revisions by 3 users not shown) | |||
Line 3: | Line 3: | ||
Giving tours around the hackspace takes time and effort. | Giving tours around the hackspace takes time and effort. | ||
So the obvious solution is to build a robot to do it. | So the obvious solution is to build a robot to do it. | ||
Here are the details and build log. | Here are the details and build log. | ||
==Base Unit== | ==Base Unit== | ||
Basic base is the blue robot from [http://en.wikipedia.org/wiki/Real_Robots Real Robots Magazine]. I got this from a car boot sale and, at the first Arduino 101 day I fixed my arduino base to the robot. | Basic base is the blue robot from [http://en.wikipedia.org/wiki/Real_Robots Real Robots Magazine]. I got this from a car boot sale and, at the first Arduino 101 day I fixed my arduino base to the robot. | ||
There is loads of detail on the [http://lpilsley.co.uk/cybot/ Lpilsley Cybot here]. | There is loads of detail on the [http://lpilsley.co.uk/cybot/ Lpilsley Cybot here]. | ||
Line 12: | Line 13: | ||
==Motor Control== | ==Motor Control== | ||
The motor control unit has been left in to power the motors. Details on the circuit diagram are [http://lpilsley.co.uk/cybot/driver.htm here]. | The motor control unit has been left in to power the motors. Details on the circuit diagram are [http://lpilsley.co.uk/cybot/driver.htm here]. | ||
Line 17: | Line 19: | ||
An audio module [http://www.embeddedadventures.com/datasheets/MOD-1007_hw_v4.pdf MOD-1007 from Embedded Adventures] has been added for the tour audio. This uses 3v3, which is taken from the Arduino, although for high volumes this does not have enough current. A seperate regulator might be required. | An audio module [http://www.embeddedadventures.com/datasheets/MOD-1007_hw_v4.pdf MOD-1007 from Embedded Adventures] has been added for the tour audio. This uses 3v3, which is taken from the Arduino, although for high volumes this does not have enough current. A seperate regulator might be required. | ||
Follow the data sheet to see how to play different files using the serial data lines. | Follow the data sheet to see how to play different files using the serial data lines. | ||
==Line Following== | ==Line Following== | ||
There is also a line follower with a [http://lpilsley.co.uk/cybot/follower.htm circuit diagram here]. | There is also a line follower with a [http://lpilsley.co.uk/cybot/follower.htm circuit diagram here]. | ||
==Brains== | ==Brains== | ||
Line 28: | Line 28: | ||
===Arduino I/O Pins=== | ===Arduino I/O Pins=== | ||
===Digital== | ====Digital==== | ||
*0 -> Rx | *0 -> Rx | ||
*1 -> Tx | *1 -> Tx | ||
Line 35: | Line 35: | ||
*4 -> Motor 2 Forward | *4 -> Motor 2 Forward | ||
*5 -> Motor 2 Backward | *5 -> Motor 2 Backward | ||
*6 | *6 -> | ||
*7 | *7 -> | ||
8 | *8 -> | ||
9 | *9 -> | ||
10 | *10 -> Top switch Microswitch | ||
11 -> RESET Sound Module | *11 -> RESET Sound Module | ||
12 -> CLOCK Sound Module | *12 -> CLOCK Sound Module | ||
13 -> SDATA Sound Module | *13 -> SDATA Sound Module | ||
A2 | ====Analog==== | ||
*A0 -> LDR 1 | |||
*A1 -> LDR 2 | |||
*A2 | |||
*A3 ->BUSY Sound Module | |||
*A4 | |||
*A5 | |||
==Modes== | |||
I'd like it to work in different modes. These include: | |||
*Light finding | |||
This finds the brightest point in a room | |||
*Random movement | |||
*No movement | |||
*Volume controlled/Silent mode | |||
=Collision Avoidance= | =Collision Avoidance= | ||
Line 67: | Line 72: | ||
On the Sonar Board: | On the Sonar Board: | ||
*Pins 5/6 are for the piezo outputs. | *Pins 5/6 are for the piezo outputs. | ||
*Pins 2/3/4 requie 10k pull-ups. | *Pins 2/3/4 requie 10k pull-ups. | ||
*Pins 2/3 are left/right input gating. | *Pins 2/3 are left/right input gating. | ||
*Pin 4 is the output | *Pin 4 is the output | ||
The concept is: | The concept is: | ||
*Send a short blast of 40kHz output. | *Send a short blast of 40kHz output. | ||
*Wait a short while (so we dont pick up the signal due to the Tx/Rx being very close to each other). | *Wait a short while (so we dont pick up the signal due to the Tx/Rx being very close to each other). | ||
*Listen for the echo reply. The time it takes is a direct indication of how far away the object is. Sound travels at 343.2m/s at sea-level and at 20C. | *Listen for the echo reply. The time it takes is a direct indication of how far away the object is. Sound travels at 343.2m/s at sea-level and at 20C. | ||
This was all looking a bit too complex. I decided to look around for easier to use boards. | This was all looking a bit too complex. I decided to look around for easier to use boards. | ||
I was told about the [http://users.ece.utexas.edu/~valvano/Datasheets/HCSR04b.pdf HC-SR04] and bought 2 on eBay for £6 delivered. | I was told about the [http://users.ece.utexas.edu/~valvano/Datasheets/HCSR04b.pdf HC-SR04] and [https://docs.google.com/document/d/1Y-yZnNhMYy7rwhAgyL_pfa39RsB-x2qR4vP8saG73rE/edit more details here]. and bought 2 on eBay for £6 delivered. | ||
[[Category:Projects]] | [[Category:Projects]] | ||
[[Category:Projects (in progress)]] | [[Category:Projects (in progress)]] |
Latest revision as of 15:10, 7 February 2019
TourRobot | |
---|---|
Primary Contact | Matt Little |
QR code |
Overview
Giving tours around the hackspace takes time and effort. So the obvious solution is to build a robot to do it.
Here are the details and build log.
Base Unit
Basic base is the blue robot from Real Robots Magazine. I got this from a car boot sale and, at the first Arduino 101 day I fixed my arduino base to the robot. There is loads of detail on the Lpilsley Cybot here.
Motor Control
The motor control unit has been left in to power the motors. Details on the circuit diagram are here.
Audio Output
An audio module MOD-1007 from Embedded Adventures has been added for the tour audio. This uses 3v3, which is taken from the Arduino, although for high volumes this does not have enough current. A seperate regulator might be required. Follow the data sheet to see how to play different files using the serial data lines.
Line Following
There is also a line follower with a circuit diagram here.
Brains
The Arduino is a Duemilanova with an ATMega328. I might upgrade to an Uno if needed.
Arduino I/O Pins
Digital
- 0 -> Rx
- 1 -> Tx
- 2 -> Motor 1 Forward
- 3 -> Motor 1 Backward
- 4 -> Motor 2 Forward
- 5 -> Motor 2 Backward
- 6 ->
- 7 ->
- 8 ->
- 9 ->
- 10 -> Top switch Microswitch
- 11 -> RESET Sound Module
- 12 -> CLOCK Sound Module
- 13 -> SDATA Sound Module
Analog
- A0 -> LDR 1
- A1 -> LDR 2
- A2
- A3 ->BUSY Sound Module
- A4
- A5
Modes
I'd like it to work in different modes. These include:
- Light finding
This finds the brightest point in a room
- Random movement
- No movement
- Volume controlled/Silent mode
Collision Avoidance
Ultrasonic Distance Detection
To start with I thought about using the Cybot Sonar Board. Distance is found using ultrasonic sensors re-purposed from the original Real Robot. These have circuit diagrams here.There is a load more information on how the Ultrasonic sensors (called the "sonar board") works here.
The microcontroller needs to output 8 pulses, each of 12.5uS length. Period is 25mS, which is an output frequency of 40kHz. Output is generated every 25mS.
On the Sonar Board:
- Pins 5/6 are for the piezo outputs.
- Pins 2/3/4 requie 10k pull-ups.
- Pins 2/3 are left/right input gating.
- Pin 4 is the output
The concept is:
- Send a short blast of 40kHz output.
- Wait a short while (so we dont pick up the signal due to the Tx/Rx being very close to each other).
- Listen for the echo reply. The time it takes is a direct indication of how far away the object is. Sound travels at 343.2m/s at sea-level and at 20C.
This was all looking a bit too complex. I decided to look around for easier to use boards. I was told about the HC-SR04 and more details here. and bought 2 on eBay for £6 delivered.