Let's Make Robots!

GUI v2

Navigate around, line folowing, wireless telemetry
AttachmentSize
General view1.33 MB
General view1.43 MB
Down side of boards1.79 MB
Comparison1.66 MB
Top side of boards, without battery1.69 MB
General view of boards1.62 MB
Blocks Diagram46.96 KB
PCB Controller - Bottom49.77 KB
PCB Controller - Top67.16 KB
PCB Motors - Bottom57.07 KB
PCB Controller - Top58.6 KB
Schematics - Motors46.83 KB
Schematics - Controller58.57 KB
Control Board - Top983.26 KB
Control Board - Bottom891.75 KB
Control Board - Top Soldered1.05 MB
Control Board - Top Soldered with Breadboard883.89 KB
Control Board - Bottom Soldered993.88 KB
Control Board - Running a test.1.73 MB
S5033356.JPG933.6 KB

UPDATE 09/11/06  
 
It's finished! (almost). The Motor Board PCB arrives and I've soldered all components together. The final results looks awesome to me! Most beautiful that I've planed. There's some parts that I don't solder, because I need purchase a SMD rework station (all solders on this robot are made with a ordinary solder station). 
 
Two problems I only know after assembly:
 
  • I've used RA4 pin of PIC18F452 for digital I/O, but unfortunately this pin is a open drain. Because that, I need to solder a pullup 10kΩ SMD resistor. Lesson: All the times, read the entire datasheet before use any device pin. 
  • In my Eagle motor library, I don't provide horizontal restrictions. So, a little decouple capacitor stay above the motor, touch it, and make a bad contact between boards. Solution: remove it.
Well, even with all the issues (inverted connectors, capacitors with wrong package, pin without pullups) I think the whole project was a success. 
 
Now, the wireless part (NRF24L01+ transducer) waits to be soldered. It'll on the party next month. So, the whole project has been closed and I'll work on the software development, that I only write a very basic functions for test and maze solves.
 
Final Design
 
4080839981_7eb23389fe.jpg
 
Final Design
 
The two boards
 
Two Boards - down
 
V1 and V2
 
 
There's a video of the test. And if someone needs more pictures or details, look at my Flickr page and my blog.
 
Thank's !!!
 
 
 
 
UPDATE 09/09/13 

The first definitive PCB arrived from Batchpcb and are soldered!
 
S5033270.jpg
 
S5033276.jpg
 
S5033272.jpg
 
 S5033284.jpg


 
I received the board at this weekend, it's the first definitive PCB of my GUI robot. It's your Motor Control PCB. Above are some images. Only left to solder the nRF24L01+ because I don't have a Hot Air Reflow Solder, and the Buzzer that I can't find.
 
Note that I've made a little mistake on p-Channel MOSFET SOT23 pinout (orange wire fix). But nothing too horrible (but in the GUI v2 design, I'll remember that...).
 
The new YouTube video contains a little test to PIC18LF452, to see if it's alive. The test was a successful.
 
Now, I expect that in the next week the Motor Board arrives too, so I'll complete the entire robot. 

 

UPDATE 08/25/09
 
My PCBs are shipped!  I'm very excitted to pick them up and solder everthing! But this update is about the schematics. I released the entire schematics of two boards and now I comment the most important parts. The full schematic are in the attachments.
 
Motor Board - Motors
 
The Micro Gear Motors and the H-Bridge circui. To save two I/O pins on MCU, I used a 74HCT04 for drive the directions commands. I have never used other combinations (like 11 and 00) in control logic. You can see on left down two Ball Caster. I put two because I need two orientations on holes. 
 
Motor Board - Motors
 
Motor Board - Battery and Interface with Controller Board
 
This is how the battery are attached to board. Nothing special. On the right are the female housing for up board connection. On of them is for reflectance sensors signals.
 
Motor Board - Battery and Interface
 
Motor Board - Step-Up Converter for 5V
 
The LM2623 is a great Boost converter. Is very small (LLP or Mini SO-8 package) and use very tiny inductors. The output voltage is given by RF1 and RF2 voltage divisor by RF2=RF1/[(Vout/1.24)-1]. The frequency of PFM (Pulse Frequency Modulation) is setted by R18 andmay vary with input voltage (See page 6 of datasheet). In that design the frequency stay between 500KHz and 1MHz. The input and output capacitors are Tantalum capacitors, with X5R or X7R dieletric. I spect 85% of mean efficiency (over the voltage input range and current variation).
Step-Up Converter
 
 
Motor Board - Reflectance Sensors
 
These are the QRE1113GR Reflectance sensors. I have to write their symbol and footprint, because I don't find them in any place. So, I spect that the design is correct, specially the footprint. There's a lot of stuff on this robot that I have created the Eagle library. If anyone needs, I put my personal library here.
 
Sensors
 
 
Controller Board - MCU
 
Nothing special on MCU. Is a PIC18F452. Detail is the Breadboard Mini, for small prototype.
 
MCU
 
Controller Board - USB Interface and Battery Charger
 
The Interface is given by a FD232RL, with self-power configuration. The 5V of USB don't power the robot, instead, charge the LiPo battery via MAX1555 circuit. I like MAX1811, because mre option like Low Batt indication, less charge time, but PCB space is a concern here.
After send the PCB for fabrication, I see a little mistake on this design. If you look this with Battery schematics, you see that only with the "ON/OFF" robot switch in "ON", the battery is charged. This was been corrected on next version.
 
USB and Battery charger
 
Controller Board - 3V LDO
 
For 3.3v devices i put a little LDO, because I don't need much power from this source.
 
3.3v LDO
 
 
Controller Board - RF transceiver
 
The transceiver choosen is the nRF24L01+, from Nordic. That's design is the same of SparkFun nRF24L01+ breakout board. So, I hope that works. 
Certainly this part  will be the most dificult to solder, because the nRF package. I don't have a SMD rework air station. Only when I have one this part will be soldered.
 
NRF24L01+
 
Thank's.
 
 

UPDATE 08/04/2009
 
The v1 PCB design was finished!
 
Some things change: 
  • LDO (Low Drop Out) Regulator MIC5205 for 3.3v devices;
  • Don't put Pin headers for stackable boards, althought I put a Mini Self-Adhesive Breadboard for small prototype (170 points in 1.8" x 1.4");
  • The Nokia 3310 LCD goes off, because some dificult in it's fixation on board;
  • For prototype, you have a header with 6 GPIOs (analog or digital pins) and access to +5v, +3.3v and GND;
  • A Buzzer! I like things that could make some noise;
  • A RGB led for general use, because I think that you need some blink LEDs to make your project a really nice project :D
 
The design comes with a NRF24L01+ for wireless communications. I like this little guy because your extreme very low power features (900nA in power down and 26uA in standby-I) WoW! And in most of cases I don't need full-duplex communication. With this feature, I'm stay really excitted to create a beacom frame for mutual identification between some robots, dont you?
 
Now that I finished the PCB design (see images bellow) I expect that in some days we have the robot mounted in the boards and look very professional.
 
Top (red) and Bottom (blue) Layers of Controller Board (with MCU): 
  
 3787157341_2c00055e0e_m.jpg                    3787967536_630af27476_m.jpg
 
Top (red) and Bottom (blue) Layers of Motors Board (with Motors):  
 
 3787157167_502072cb09_m.jpg                    3787967372_61829b823c_m.jpg
 

To view a greater image of PCBs, click on image files on begin of article (attachments)
 
 
 

 
Init
 
GUI is a robot prototype made to be little, fast and easy to use and upgrade.  In your up board (main board) it has:
 
  • PIC MCU 18F252 at 20MHz;
  • DC-DC Boost converter NCP1400-5V;
  • The down board has:
  • Dual motor controller TB6612FNG;
  • 7 reflectance sensors QTR-1RC;
  • 2 Micro Gear Motor 30:1;
  • 3.7V LiPo battery.
The PIC is programmed with Tiny Bootloader, to easy program change. 
 
Robot dimensions are 73.12[L]x77.76[W]x32[H] mm. There's a lot of space for more things, yet. More photos in my flickr page.
 
The prototype works great, then a definitive PCB going to be designed to increment some new feetures. This include:
 
  • PIC MCU 18F452 TQFP, to add more I/O;
  • DC-DC Step-Up converter LM2623 for 5V devices;
  • DC-DC Step-Down converter (not defined yet) to 3.3V devices;
  • USB Serial FTDI 232RL for serial comunication;
  • LiPo Battery charge, directly from USB with MAX1555;
  • Nordic NRF24L01+ for half-dupplex comunication and telemetry;
  • Nokia 3310 LCD;
  • Pin Headers for stackable boards (like Arduino), for add... anything!;
All this stuff you found at SparkFun and Pololu.
 

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
Hey, hows it been? Have you been soldering up your PCB'S?
I'm very excited to see the PCB's! I love your documentation and designs.
Hey, any updates coming up?
do you use the max232 cicuit when using your bootloader? i dont see it on you robot.

No, I'm not use it because my interface is USB, so, I use the FT232R, to convert the USB to Serial, directly on board, no adapters between PC and my robot. The MAX232 are usefull when you use a DB9 Serial port.

With the  FT232R you can use the 5V USB Power to power your circuit (and conected toUSB) and, in my case, charge the battery on robot.

i am refering to your older version, non pcb version.
In that version, the prototype, I used a little USB-Serial adapter from SparkFun. That's what I have make on the PCB version.
Im very intrested with the RF technology too. Wonder if i could program over that. Well, I'll get started with purchasing the material needed for my micromouse!

Very clean, cool bot.

I'm definitely going to look into that LiPo charger. I'm not sure my soldering is good enough to start on SMT yet. 

This reminds me of Pololu's 3pi. Compact, prefessional, clean, it's great! =D