Putting robotics at your service™

Free shipping on orders over $200

Kurt's Arduino Mega Shield...

Print view Share :
Previous topicNext topic

Page 1 of 5 [ 69 posts ]

1, 2, 3, 4, 5
User avatar
Guru ( offline )
Posts: 4922
Posted: 2012-03-08 21:27 
Over the last many months, I have had the fun of experimenting with several different Micro-controllers and having a lot of fun. This included the fun with experimenting with a shield for the Arduino Mega, that was built to plug into the Seeeduino Mega. I like this board as it is compact and not that different in size to the normal Lynxmotion boards. I have also experimented with the Chipkit boards which are based on an 80mhz 32 bit Pic32MX processor. The boards and IDE make them reasonably compatible with the Arduinos. Also hopefully soon Arduino will release the Arduino Due, which is a 96mhz 32 bit ARM processor. Both of these platforms are based on the Arduino Mega footprint... I think it would be a lot of fun to try out several of my robots on these newer platforms, so I thought it would be nice to have a shield that had all of the things I needed and that I could plug into these boards. Note: personally I am not that big into shields, and wish there were boards that had the basic functionality that I want, but when in Rome...

So I started to play around with some of the different CAD programs out there. I tried both Eagle and Diptrace and found that I personally prefer Diptrace. What I came up with was a board that had 3 out of 4 mounting holes that match up with the Standard Lynxmotion boards. The fourth one ran into IO pins. Also have standard Arduiono Mega holes. The board is larger than standard Lynxmotion boards, but for the majority of my robots that should not be an issue.

The current Schematic looks like:
Attachment:
Kurts-Arduino-Mega-Shield-w.jpg
Kurts-Arduino-Mega-Shield-w.jpg [ 69.91 KiB | Viewed 3182 times ]


My current layout looks like:
Attachment:
DipTrace-PCB---Arduino-Mega.jpg
DipTrace-PCB---Arduino-Mega.jpg [ 129.96 KiB | Viewed 3182 times ]


As you can probably see, I have this board pretty full of stuff. The biggest challenge was to leave enough room free to allow for an XBee.

I believe this design gives me:
32 Digital IO pins with 3 pin headers- that you can choose VS/+5V on groups of 4 pins. 1 group has PU resistors for PS2
16 Analog pins with 3 pin headers - Again can choose vs/+5V on each 4 pin group. (Pins can be used for digital as well)
Speaker
3 Buttons
4 leds (D13 + 3 others)
XBee: Setup to do voltage conversions - Need to verify I did this correct. I have this default through shunts to use USART 3
I2C EEPROM - Added the eeprom plus PU resistors.

I probably need to make another pass through and verify that I got all of the locations of things correct and then I will probably have a few of these boards fabricated for me. Will try the first one out with an older Arduino Mega I have sitting around, then I will try it out with the Chipkit Max32.

Thoughts? Suggestions?

Kurt


User avatar
Guru ( offline )
Posts: 4127
Posted: 2012-03-09 13:57 
Hi Kurt,

Nice board! A little hard for me to read the schematic, but I get the gist of what's going on. Looks like you've got it covered.

I'm not much interested in the XBEE, I'd prefer a Lantronics module. ;>)

How about motor controllers? or a couple of FET drivers for my lasers?

Any RS-232 or USB for 2nd serial port of MEGA?

I have a couple of MEGAs. I will upgrade the uP on my MicroMoose Table Top 'bot.

Too bad you didn't do it in Eagle... Never heard of Diptrace. Gerber files?

Alan KM6VV

_________________
Visit:
http://groups.yahoo.com/group/SherlineCNC/
http://tech.groups.yahoo.com/group/HexapodRobotIK/


User avatar
Guru ( offline )
Posts: 4922
Posted: 2012-03-09 16:22 
Thanks Alan,

Diptrace like Eagle is a Schematic Capture, plus card layout with an auto-router. For me it works a lot better than Eagle. You can download a Freeware version of Diptrace from: http://www.diptrace.com/
My current board has too many parts (actually pads) for the standard freeware version, which I believe allows a maximum of 300 pads and 2 layers. You can still view it with it. If you are doing your designs not for profit, you can have it upgraded to a version that could edit it (500 pads). I purchased the standard version which allows me 4 signal layers and 1000 pads.

Gerber files are files that you generate from the design (either Eagle, Diptrace...) that you send off to the board manufacturer. There are seperate files for each of the layers (Board outline, top silk, top mask, top traces, bottom traces, bottom mask, ...). In addition you need to generate an N/C Drill file for the design. To fabricate this board, I will probably use PCBFabExpress.com.

May later play with other versions, that other stuff, like you mentioned. So far I have not had a need for a 2nd USB or RS232. It probably would not be hard to add a Max232, but don't have any more room for any connectors, as with the XBee can't put any taller things below it.

Since yesterday I have done some more cleanup. Things like, I did not like how I had the USART section, where the GND pins were innermost to the board, where in all other places they were outermost. So I updated them. Also cleaned up some of the Silk screen arrows and the like. Will next work on building a zip file with all of the necessary files to fabricate a few of them to try out.

Kurt


Attachment:
DipTrace PCB - Arduino Mega Shield with XBee.pdf [75.71 KiB]
Downloaded 185 times
Attachment:
User avatar
Guru ( offline )
Posts: 4127
Posted: 2012-03-09 16:53 
Yeah, those PDFs are a little sharper! Better for my old eyes...

You're not going to "feed through" the ISP connector in the center of the board? Just curious.

Arduino kinda missed it when they failed to bring out pins in the "servo connector" standard. Much easier to implement a controller board with the addition of GND and Power pins!

Thanks for the new PDFs!

Alan KM6VV

_________________
Visit:
http://groups.yahoo.com/group/SherlineCNC/
http://tech.groups.yahoo.com/group/HexapodRobotIK/


User avatar
Guru ( offline )
Posts: 4922
Posted: 2012-03-09 18:02 
An earlier version of the board had the ISP connector, but if I populate it, the XBee will hit it and short it out. I have not see any taller XBee sockets. I could possibly add it back, and not populate it on my boards, but...

Kurt


User avatar
Guru ( offline )
Posts: 4127
Posted: 2012-03-09 18:21 
User avatar
Guru ( offline )
Posts: 4922
Posted: 2012-03-09 20:36 
Probably not, but since I have not actually ordered any boards yet. I did fit it back in... On my first boards I will probably not populate it, but it is there if I need it...

Attachment:
DipTrace-PCB---Arduino-Mega.jpg
DipTrace-PCB---Arduino-Mega.jpg [ 132.28 KiB | Viewed 3155 times ]


Kurt


User avatar
Guru ( offline )
Posts: 4127
Posted: 2012-03-09 21:50 
That'll do it!

A BlueSmIrF connector would be nice! ;>)

Alan KM6VV

_________________
Visit:
http://groups.yahoo.com/group/SherlineCNC/
http://tech.groups.yahoo.com/group/HexapodRobotIK/


User avatar
Guru ( offline )
Posts: 4922
Posted: 2012-03-11 14:07 
Maybe BT on next version. I think I am about to have my first version be fabricated... I decided that in case this works out reasonably well, at some point I may need a robot with 2 VS sets of pins, like on Arc32/SSC-32... So I added them...

Attachment:
DipTrace-PCB---Arduino-Mega.jpg
DipTrace-PCB---Arduino-Mega.jpg [ 133.75 KiB | Viewed 3134 times ]


The zip file is what I will submit to pcbfabexpress. It has additional things that they don't need, like the actual design files, but I like to keep it as a complete package.

Kurt


Attachment:
File comment: Gerber files, plus other design information
kams_001.zip [424.52 KiB]
Downloaded 148 times
User avatar
Guru ( offline )
Posts: 4127
Posted: 2012-03-11 19:45 
User avatar
Guru ( offline )
Posts: 2042
Posted: 2012-03-11 21:02 
I use diptrace also for my copter shield..!

Nice board btw

_________________
Eric Nantel - DiaLFonZo
UAV/Drones Specialist

RobotShop inc.
Putting Robotics at your service!™
www.robotshop.com

Lynxmotion
Imagine it. Build it. Control it.™
http://www.Lynxmotion.com


User avatar
Guru ( offline )
Posts: 4922
Posted: 2012-03-11 21:15 
DiaLFonZo wrote:
I use diptrace also for my copter shield..!

Nice board btw

Thanks, Yep, I found out about diptrace as I think that is what Parallax uses...

KM6VV wrote:
No BOM?

Not yet, but there will be...

Kurt


User avatar
Guru ( offline )
Posts: 2042
Posted: 2012-03-11 21:19 
I ordered my PCB from seeedstudio ... real cheap and mine came real good.
Ordered a first 10 board of my LED ring then 50 board of the shield

_________________
Eric Nantel - DiaLFonZo
UAV/Drones Specialist

RobotShop inc.
Putting Robotics at your service!™
www.robotshop.com

Lynxmotion
Imagine it. Build it. Control it.™
http://www.Lynxmotion.com


User avatar
Guru ( offline )
Posts: 4922
Posted: 2012-03-12 10:30 
Thanks Eric, I may have to look into them. I wonder if they would also populate the board?

Will order in the next couple of hours. Up till now I have test my Arduino Phoenix code using my TH4-R hex which started off as being a CH3-R hex and has had more or less everything replaced. I have done all of the testing using a SSC-32 to control the servos. I have been wondering how well the Arduino Mega could do this itsef as well as the Chipkit Max32 and soon to be (hopefully) Arduino Due. I do not wish to tear my current test Hex as I want it to be able to test all of the different platforms. Nor do I wish to tear apart my Arc32 Phoenix as I like it the way it is :lol:

So instead I decided to resurrect the CHR-3 from spare parts, plus the old legs, plus the old body and parts from one of my two Brats. What is old is new :lol:
Attachment:
CHR3-old-is-new.jpg
CHR3-old-is-new.jpg [ 40.92 KiB | Viewed 3110 times ]


It is not perfect as the old brat was not black. Also I found I was 3 bearings short, but found I had 3 of the old C brackets that had a screw hole at one end, which I used a simple screw to attach the leg...
But I think it should work well enough for this. First test will be with Arduino Mega (with Seeeduino Mega and prototype shield). Will replace with the Arduino Mega with the shield of this thread when I get them. Later will also test with this shield and Chipkit Max32. Will probably continue this part on a different thead.

Kurt


User avatar
Guru ( offline )
Posts: 4922
Posted: 2012-03-12 16:25 
I hacked up the board a little more before I submitted it. I added 2 1x10 connectors that are placed next to the XBee socket and connected to all of the IO pins. Probably not needed but it gives me the chance to potentially connect up other pins of the XBee like RTS if I find it needed...

Also enlarged all the vias, such that I should not get a surcharge... Hopefully I did not screw up anything :lol:

Updated zip file...


Attachment:
kams_001.zip [429.46 KiB]
Downloaded 141 times
1, 2, 3, 4, 5

All times are UTC - 5 hours [ DST ]. It is currently 2014-12-20 21:04
Feedback Form
Feedback Form