Difference between revisions of "Project:TRTL"

From London Hackspace Wiki
Jump to navigation Jump to search
 
(21 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 +
*************** See http://wiki.techinc.nl/index.php/TRTL for the latest version of this project ***************
 +
 
=Turtle Robot, Talks Logo=
 
=Turtle Robot, Talks Logo=
  
Line 5: Line 7:
 
==Project Aim==
 
==Project Aim==
 
To produce a low cost kit robot that is simple to build, and easy to use/program via software with the aim of introducing and kids and adults alike to building, making, electronics and software. For certain values of building, making, electronics and software.
 
To produce a low cost kit robot that is simple to build, and easy to use/program via software with the aim of introducing and kids and adults alike to building, making, electronics and software. For certain values of building, making, electronics and software.
 +
 +
The intention is not to create a commercially available/viable kit.
  
 
===Project Participants===
 
===Project Participants===
Amran  
+
[[User:amx109|Amran]]
 +
 
 +
[[User:jonty|Jonty]]
  
Jonty
+
[[User:Samthetechie|Samthetechie]]
  
 
Chris (hipster)
 
Chris (hipster)
Line 16: Line 22:
 
TRTL is intended as an educational/learning device. It is not a toy to keep. it is only just for christmas.
 
TRTL is intended as an educational/learning device. It is not a toy to keep. it is only just for christmas.
  
TRTL should be built upon existing open hardawre/software stacks. ones with active/lrage communities attached to them. This will make the tranisition from TRTL to general hacking a simple process. It also adds value to the kit - the purchaser not only gets a TRTL bot and its inherant educational process, but also an 'AVR clone' - the entry point into the land of arduino.
+
TRTL should be built upon existing open hardware/software stacks. ones with active/lrage communities attached to them. This will make the transition from TRTL to general hacking a simple process. It also adds value to the kit - the purchaser not only gets a TRTL bot and its inherant educational process, but also an 'AVR clone' - the entry point into the land of arduino.
  
 
Hardware: Nanode
 
Hardware: Nanode
Sofware: Wrapper over bitlash/arduino processing environment
+
Software: Wrapper over bitlash/arduino processing environment
(with possibly a cutdown LOGO language intbetween? implemented as custom bitlash functions)
+
(with possibly a cut down LOGO language inbetween? implemented as custom bitlash functions)
  
 
===Why Nanode?===
 
===Why Nanode?===
Line 36: Line 42:
  
 
===Why Arduino/Bitlash===
 
===Why Arduino/Bitlash===
Arduino is an easy to use protyping language developed for ATMega32 based microcontrollers. There is massive community support for all things arduino. This choice is in line with the project aims to build on existing community supported platforms.
+
Arduino is an easy to use prototyping language developed for ATMega32 based microcontrollers. There is massive community support for all things arduino. This choice is in line with the project aims to build on existing community supported platforms.
  
 
The use of bitlash is up for debate since i cant think of one good reason it should be used over an arduino sketch, but i like the idea of creating custom functions and executing them for movement et al.
 
The use of bitlash is up for debate since i cant think of one good reason it should be used over an arduino sketch, but i like the idea of creating custom functions and executing them for movement et al.
  
 
===Detailed milestones===
 
===Detailed milestones===
 
+
* Cost effective prototype
Cost effective prototype
+
* Working electronics
Working electronics
+
* Finalised physical design
Finaliased physical design
+
* UI design
 
+
* Functional software for comms to nanode via bluetooth
UI design
+
* Making it go back back, forth and forth.
Functional software for comms to nanode via bluetooth
 
 
 
Making it go back back, forth and forth.
 
  
 
===How much should it cost===
 
===How much should it cost===
 
15-20 GBP
 
15-20 GBP
  
==Prototypes==
+
==Hardware==
  
 
There will be numerous prototype. Initial outline is five.
 
There will be numerous prototype. Initial outline is five.
Line 61: Line 64:
 
Aim - to build a TRTL bot and get a rough cost estimate for this prototype
 
Aim - to build a TRTL bot and get a rough cost estimate for this prototype
 
Only buy items that can also be bought in bulk.
 
Only buy items that can also be bought in bulk.
Do not include postage costs fo rmaterials.
+
Do not include postage costs of materials.
  
 
Generate interest for the project.
 
Generate interest for the project.
Line 88: Line 91:
 
0.70 GBP - wooden wheel 60mm (http://www.alwayshobbies.com/Models/Wheeled-Toys/Wooden-Wheels/Wood-Turned-Wheels-60mm.ice)
 
0.70 GBP - wooden wheel 60mm (http://www.alwayshobbies.com/Models/Wheeled-Toys/Wooden-Wheels/Wood-Turned-Wheels-60mm.ice)
  
0.50 GBP - cheap chinese motor
+
0.50 GBP - cheap chinese motor (cite supplier url)
  
 
10.20 GBP - nanode AVR spec (via Ken Boak)
 
10.20 GBP - nanode AVR spec (via Ken Boak)
  
4.69 GBP - bluetooth module for serial communication to AVR via SPI (eBay special!)
+
4.69 GBP - bluetooth module for serial communication to AVR via SPI (eBay - many sellers)
  
 
0.20 GBP - 3D printed castor (via London Hackspace - approx cost)
 
0.20 GBP - 3D printed castor (via London Hackspace - approx cost)
Line 98: Line 101:
 
marbles (if using on non hard/laminated surface?)
 
marbles (if using on non hard/laminated surface?)
  
1.91 GBP - H bridge
+
1.91 GBP - H bridge (http://proto-pic.co.uk/h-bridge-motor-driver-1a/)
  
 
====Cost for prototype====
 
====Cost for prototype====
Line 132: Line 135:
 
===Prototype 5===
 
===Prototype 5===
 
Should be the finished version.
 
Should be the finished version.
 +
 +
==Prototype 1==
 +
8/9/11 [[User:amx109|Amran]] and [[User:Samthetechie|Samthetechie]]
 +
 +
===Logical Connections===
 +
Logic connections to the SN754410 QUADRUPLE HALF-H DRIVER are as follows:
 +
*3,4EN to Nanode's digital 13
 +
*4A to Nanode's digital 8
 +
*3A to Nanodes's digital 9
 +
*2A to Nanodes's digital 10
 +
*1A to Nanode's digital 11
 +
*1,2EN to Nanode's digital 12
 +
 +
[[File:SN754410.png]]
 +
 +
===Left Motor Connection===
 +
Connect one terminal of a small two pin DC motor to 1Y and one to 2Y
 +
 +
===Right Motor Connection===
 +
Connect one terminal of a small two pin DC motor to 3Y and one to 4Y
 +
 +
===Motor Testing===
 +
Upload the source code and ensure that everything is connected properly. Now note which way the motors spin and change the polarity of 1Y and 2Y (i.e. literally swap 1Y with 2Y as it is connected to the motor) or 3Y with 4Y in order to ensure that the left and right motor are spinning the same way at the same time while the demo code is running.
 +
 +
There is a Github Gist of the H-bridge control here: [https://gist.github.com/1217572]
 +
 +
  #define EN_1_2 12
 +
  #define EN_3_4 13
 +
  #define INPUT_1A 11
 +
  #define INPUT_2A 10
 +
  #define INPUT_4A 8
 +
  #define INPUT_3A 9
 +
 
 +
  void setup()
 +
  {
 +
    pinMode(EN_1_2, OUTPUT);
 +
    pinMode(EN_3_4, OUTPUT);
 +
    pinMode(INPUT_1A, OUTPUT);
 +
    pinMode(INPUT_2A, OUTPUT);
 +
    pinMode(INPUT_3A, OUTPUT);
 +
    pinMode(INPUT_4A, OUTPUT);
 +
    digitalWrite(EN_1_2, HIGH);
 +
    digitalWrite(EN_3_4, HIGH);
 +
  }
 +
  void loop()
 +
  {
 +
    digitalWrite(INPUT_1A, HIGH);
 +
    digitalWrite(INPUT_2A, LOW);
 +
    digitalWrite(INPUT_3A, HIGH);
 +
    digitalWrite(INPUT_4A, LOW);
 +
    delay(10000);                  // wait for 10 seconds
 +
    digitalWrite(INPUT_1A, LOW);
 +
    digitalWrite(INPUT_2A, HIGH);
 +
    digitalWrite(INPUT_3A, LOW);
 +
    digitalWrite(INPUT_4A, HIGH);
 +
    delay(10000);                  // wait for 10 seconds
 +
  }
 +
 +
==Software==
 +
 +
===Brief===
 +
 +
===Screen layout===
 +
 +
====Layer 1====
 +
 +
====Layer 2====
 +
 +
====Layer 3====
  
 
=Misc/Scratch/TODO=
 
=Misc/Scratch/TODO=
Line 153: Line 225:
  
 
http://www.amberfrog.com/logo/ - interesting interface layout
 
http://www.amberfrog.com/logo/ - interesting interface layout
 +
 +
Bluetooth info:
 +
 +
how to use:
 +
http://www.instructables.com/id/how-to-Control-arduino-by-bluetooth-from-PC-pock/
 +
 +
 +
board and electronic details
 +
http://www.cutedigi.com/product_info.php?products_id=4360

Latest revision as of 14:30, 4 March 2013

Yup. That's the one.

Project Aim

To produce a low cost kit robot that is simple to build, and easy to use/program via software with the aim of introducing and kids and adults alike to building, making, electronics and software. For certain values of building, making, electronics and software.

The intention is not to create a commercially available/viable kit.

Project Participants

Amran

Jonty

Samthetechie

Chris (hipster)

Concept and ideas dump

TRTL is intended as an educational/learning device. It is not a toy to keep. it is only just for christmas.

TRTL should be built upon existing open hardware/software stacks. ones with active/lrage communities attached to them. This will make the transition from TRTL to general hacking a simple process. It also adds value to the kit - the purchaser not only gets a TRTL bot and its inherant educational process, but also an 'AVR clone' - the entry point into the land of arduino.

Hardware: Nanode Software: Wrapper over bitlash/arduino processing environment (with possibly a cut down LOGO language inbetween? implemented as custom bitlash functions)

Why Nanode?

We know the designer. We know the hardware. We can customise it and build just the 'AVR' part (ie the arduino compatible bit) for much less than a nanode would cost. Once the TRTL is built, if the owner wants to progress further into the hacking arena, he/she are presented with two paths. stick with the arduino clone, or build up the remaining nanode components to get a full blown nanode.

Ken Boak has supplied the following as an outline costing:

"The bottom line is £10.20...but there are several things you can then remove.. This brings you down to £8.07"

we will take the higher costing of 10.20GBP as a conservative estimate of cost.

As production of the nanode becomes more efficient the cost is further expected to drop. A figure as low as 7 GBP has been estimated. However until a nanode has been delivered at this cost level, it would be foolish to assume that it will.

Why Arduino/Bitlash

Arduino is an easy to use prototyping language developed for ATMega32 based microcontrollers. There is massive community support for all things arduino. This choice is in line with the project aims to build on existing community supported platforms.

The use of bitlash is up for debate since i cant think of one good reason it should be used over an arduino sketch, but i like the idea of creating custom functions and executing them for movement et al.

Detailed milestones

  • Cost effective prototype
  • Working electronics
  • Finalised physical design
  • UI design
  • Functional software for comms to nanode via bluetooth
  • Making it go back back, forth and forth.

How much should it cost

15-20 GBP

Hardware

There will be numerous prototype. Initial outline is five.

Protoype 1

Aim - to build a TRTL bot and get a rough cost estimate for this prototype Only buy items that can also be bought in bulk. Do not include postage costs of materials.

Generate interest for the project.

Materials Required

1/6 x 600x300mm MDF sheet

2 x wooden wheel

2 x cheap chinese motor

1 x nanode AVR spec

1 x bluetooth module for serial communication to AVR via SPI

2 x 3D printed castor

2 x marbles (if using on non hard/laminated surface?)

1 x H bridge

Material Cost (per unit)

1.05 GBP - MDF sheet 600mmx300mm http://www.hobartlaserables.com/wood/mdf/4mm-laser-grade-mdf-600x300mm

0.70 GBP - wooden wheel 60mm (http://www.alwayshobbies.com/Models/Wheeled-Toys/Wooden-Wheels/Wood-Turned-Wheels-60mm.ice)

0.50 GBP - cheap chinese motor (cite supplier url)

10.20 GBP - nanode AVR spec (via Ken Boak)

4.69 GBP - bluetooth module for serial communication to AVR via SPI (eBay - many sellers)

0.20 GBP - 3D printed castor (via London Hackspace - approx cost)

marbles (if using on non hard/laminated surface?)

1.91 GBP - H bridge (http://proto-pic.co.uk/h-bridge-motor-driver-1a/)

Cost for prototype

All costs in GBP

0.175 - 1/6 x 600x300mm MDF sheet

1.40 - 2 x wooden wheel

1.00 - 2 x cheap chinese motor

10.20 - 1 x nanode AVR spec

4.69 - 1 x bluetooth module for serial communication to AVR via SPI

0.40 - 2 x 3D printed castor

2 x marbles (if using on non hard/laminated surface?)

1.91 - H bridge

Total: 19.775

Prototype 2

review materials used and initial design. refine prototype to 'RC' state.

Prototype 3

supply kit to intended user. ask them to build it. debrief/review

Prototype 4

minor changes/modifications.

Prototype 5

Should be the finished version.

Prototype 1

8/9/11 Amran and Samthetechie

Logical Connections

Logic connections to the SN754410 QUADRUPLE HALF-H DRIVER are as follows:

  • 3,4EN to Nanode's digital 13
  • 4A to Nanode's digital 8
  • 3A to Nanodes's digital 9
  • 2A to Nanodes's digital 10
  • 1A to Nanode's digital 11
  • 1,2EN to Nanode's digital 12

SN754410.png

Left Motor Connection

Connect one terminal of a small two pin DC motor to 1Y and one to 2Y

Right Motor Connection

Connect one terminal of a small two pin DC motor to 3Y and one to 4Y

Motor Testing

Upload the source code and ensure that everything is connected properly. Now note which way the motors spin and change the polarity of 1Y and 2Y (i.e. literally swap 1Y with 2Y as it is connected to the motor) or 3Y with 4Y in order to ensure that the left and right motor are spinning the same way at the same time while the demo code is running.

There is a Github Gist of the H-bridge control here: [1]

 #define EN_1_2 12
 #define EN_3_4 13
 #define INPUT_1A 11
 #define INPUT_2A 10
 #define INPUT_4A 8
 #define INPUT_3A 9
 
 void setup()
 {
    pinMode(EN_1_2, OUTPUT);
    pinMode(EN_3_4, OUTPUT);
    pinMode(INPUT_1A, OUTPUT);
    pinMode(INPUT_2A, OUTPUT);
    pinMode(INPUT_3A, OUTPUT);
    pinMode(INPUT_4A, OUTPUT);
    digitalWrite(EN_1_2, HIGH);
    digitalWrite(EN_3_4, HIGH);
 }
 void loop()
 {
   digitalWrite(INPUT_1A, HIGH);
   digitalWrite(INPUT_2A, LOW); 
   digitalWrite(INPUT_3A, HIGH);
   digitalWrite(INPUT_4A, LOW);
   delay(10000);                  // wait for 10 seconds
   digitalWrite(INPUT_1A, LOW);
   digitalWrite(INPUT_2A, HIGH);
   digitalWrite(INPUT_3A, LOW);
   digitalWrite(INPUT_4A, HIGH);
   delay(10000);                  // wait for 10 seconds
 }

Software

Brief

Screen layout

Layer 1

Layer 2

Layer 3

Misc/Scratch/TODO

possible use of http://arduino.cc/blog/2009/03/09/snap-on-panel-for-arduino-based-instruments/

add interface design pics and rational for 'page flow' in the app

wheels:

http://www.alwayshobbies.com/Models/Wheeled-Toys/Cart-Wheels/Scale-Wheels-for-Carts-$4-Wagons-80mm.ice

http://www.alwayshobbies.com/Models/Wheeled-Toys/Wooden-Wheels/Wood-Turned-Wheels-60mm.ice

http://www.alwayshobbies.com/Models/Wheeled-Toys/Moulded-Wheels/105mm-Moulded-Spoke-Wheel.ice

Look at Teagueduino for possible inspiration/collaboration:

http://www.kickstarter.com/projects/teague/teagueduino-learn-to-make

http://labs.teague.com/

http://www.amberfrog.com/logo/ - interesting interface layout

Bluetooth info:

how to use: http://www.instructables.com/id/how-to-Control-arduino-by-bluetooth-from-PC-pock/


board and electronic details http://www.cutedigi.com/product_info.php?products_id=4360