Jump to content
43oh

Project deathbot


Recommended Posts

I received and Amazon gift card for my birthday, and since it wasn't quite large enough to buy one nice piece of equipment that I need, I decided its time to build something that I can tinker with for a while.  So I picked up this tracked robot chassis :

 

http://www.tamiyausa.com/product/item.php?product-id=70108

 

with the dual gearbox and some random components, including a bluetooth slave module, which I'm going to use to send it serial commands.  My goal is to have a robotic breadboard with more of a focus on autonomy than direct control.  I also want to make it modular enough that I can use any dev board as the brain, so I'm going to design the main control modules to work with a multi-master bus (probably I2C).  This way it is easy to insert any controller into the system and I can use an interrupt based system to allow the modules to report events back to the controller.

 

Before I can even begin to think about those details though, I need to iron out and build the motor controller and the power system.  These are what I have in mind:

 

 

Motor Control:

My current plan is to build a controller using a DRV8833PWPR chip and a msp430 to drive it.  The msp430 will handle the I2C stuff and output the pwm signals to the h-bridge.  I'm also going to include a current monitoring circuit on top of the 8833's current limiting feature.

 

 

Power:

Don't have a solid plan in terms of parts, but I do want to use a Lipo cell and build the charging circuit and fuel gauge into the controller.  The motors included in the kit are 3V motors, but they can be upgraded to 6V, so I'm contemplating just building regulated 3.3V and 6V rails, with the 6V rail disconnected via a jumper if I use a single cell battery.   One issue I am facing is that it appears all of the battery management chips I'm finding are no lead designs.  How hard are those to hand solder?  Can they be drag soldered?

 

My parts should start arriving next week, so I'll start including pictures as things progress.  I'm also going to start ordering parts for the motor control here soon and start drawing up the board, so feedback would be greatly appreciated.

Link to post
Share on other sites

I looked at that kit, but I don't think I can use an L298, as the max voltage the motor will tolerate is 3V.  That's why I chose the DVR8833.  I've put together a schematic for the motor controller.  Since the motors have a stall current of 2.1 A and these chips are only tolerant of 2A RMS (per channel), I decided to just run two chips in parallel mode, which adds about a 50% safety factor.  I'm also limiting the current to 1A per channel (2A per motor) via the current sense pins.

 

Here is the schematic:

post-28692-0-84320000-1357350818_thumb.png

 

J1 is the main header with power and data bus connections.  I also have an ICP header which is isolated from the main power bus so it will power the mcu but not the motor drivers.  Control over the two drivers is performed via pin 1.4/1.5 and 2.0/2.1.  One of the pair will be configured for pwm and the other will be a simple digital IO pin.  By flipping which is which and the state of the GPIO pin, I can switch between fast and slow decay modes.  The MCU controls both driver's reset pin as well to act as an interlock.

 

One thing I have not really figured out yet is a good way to measure current consumption by the two motors.  I have two ADC10 pins reserved, but I'm not sure what the best place to take the measurement would be.

Link to post
Share on other sites

 

One thing I have not really figured out yet is a good way to measure current consumption by the two motors.  I have two ADC10 pins reserved, but I'm not sure what the best place to take the measurement would be.

A shunt resistor in series with one of the motor lines. The voltage across the known  resistor will give you the current.

Link to post
Share on other sites

I don't need a BMS, but want one.  I want to be able to charge the unit without pulling the battery, which would open up options for adding an inductive charging station module later on.  I also want to expose as much info about the battery as possible to the main MCU, so battery state info can be worked into the logic if desired.  I've found it's easier to ignore information you have but don't need than to obtain info you need but don't have.

Link to post
Share on other sites

I don't need a BMS, but want one.  I want to be able to charge the unit without pulling the battery, which would open up options for adding an inductive charging station module later on.  I also want to expose as much info about the battery as possible to the main MCU, so battery state info can be worked into the logic if desired.  I've found it's easier to ignore information you have but don't need than to obtain info you need but don't have.

That would be Battery Fuel Gauges.

Link to post
Share on other sites

yea I know I need a fuel gauge for the monitoring part, but I also need other pieces for the charging.  I was going off of this app note:

 

http://www.ti.com/lit/an/slaa529a/slaa529a.pdf

I did not know you needed charging too.. then yes, that would be a Battery Management Chip, not a fuel gauge.

Link to post
Share on other sites

The chassis came in today so I built it with the dual gearbox and mocked it up with both my launchpad and my STM32F3.  There is enough room between the plates that I should be able to house the batteries and all related electronics down there, leaving the top plate completely open for sensors and control electronics.

 

I also got the ultrasonic sensor and hooked it up well enough to get some signal on my scope, so now I just need to start working on interfacing it with the other electronics.

post-28692-0-00128900-1357702662_thumb.jpg

post-28692-0-54501600-1357702680_thumb.jpg

post-28692-0-11932200-1357702694_thumb.jpg

Link to post
Share on other sites

I received the bluetooth uart adaptor today and managed to get it working though my bus pirate.  It's a really spiffy little device.  It's just a bluetooth-UART bridge.  It's rated for 3.5 -5V Vcc, but I just ran it at 3.3V and it worked, so at least I can work with it while I'm waiting to get my line level translators built.  I should have picked up a few of them...having wireless serial with 100m range is pretty handy.

Link to post
Share on other sites

I finished drawing up the motor control board for the most part.  It has an  MSP430G2553 on board to handle the PWM stuff with communication over both UART and I2C.  I decided to remove the current sensing functionality as the shunt resistors were taking up 1/3 of the board and adding at least $5 to the board cost.  The drivers do have an adjustable current limiter, so I can still keep the motors safe....I just won't have a way to detect motor stall with the IC.

 

I am tempted to break out the extra pins to some pads just to have the ability to add stuff later, but the board is already pretty crowded.  I'm also deciding if I want to squeeze in a voltage regulator or just bank on having an independent regulated rail.

 

EDIT:  Decided to go back and break out those 5 unused pins to some pads on the edge.  I don't think I can fit another trace on this board.

post-28692-0-11850500-1358380743_thumb.png

post-28692-0-11806000-1358380756_thumb.png

Link to post
Share on other sites

Boards are ordered!  I hurried up and finalized the boards and sent them in to Seeed to take advantage of their $10 free coupon deal.  Should have them back and populated in a few weeks.  Unfortunately I managed to snap a few pins off the G2553 IC on my launchpad, so I will have to wait until I get the board assembled before I can start building/debugging firmware.

Link to post
Share on other sites

Well I just realized I might have borked up my drill file.  I submitted it in excellon instead of rs274x.  Funny thing is seeed lists the files as being 'checked' and accepted, and when I tried exporting the drills as a rs274 fie, they looked like crap in viewplot.  So we'll see what happens....at least the $10 coupon will cover my mistake if I jacked it up.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...