Hello LMR Community! I need your opinions and advice. One of my many jobs at college is a Lab TA/Program Manager for a space inside one of the freshman dorms. Think combination maker-space and study space with some cool prototyping equipment. One of the things I would like to implement is a semester long robotics competition to get students active in the space and give them some hands on experience with mechatronics and engineering in general. The overall idea is to spend the first month or so helping the students put together a custom "kit" developed by the Lab TAs and the other two months modifying the kits to compete in a challenge. Right now the cost of a single robot is between 35 dollars and 50 dollars depending on quantity and some other options. My specific task has been to develop the custom control board. I currently have a proof of concept done, which was mainly to validate the schematics and prove it can control a robot.
So above is a picture of the current prototype robot and the PCB. It supports programming from the arduino IDE over USB, has the same pins broken out as an arduino uno, can drive two DC motors up to .8A each with full direction and speed control and it has a built in socket for an ultrasonic sensor. It had a few layout bugs which need to be fixed but overall works pretty well.
What I need from you is suggestions/wishlist of what would be nice to have in a robot control board! Could be anything! I am trying to design the board to be as flexable as possible so it can be reused for future challenges/events in the Lab and the board area needs to be doubled so we can meet the OSHpark medium run discount. I'll upload the schematics, layout and current bill of materials to my github if anyone is interested (as soon as I fixed the current board issues).
So I designed, laided out, and placed the order for this board in three hours. I am just happy it worked at all. (Long story).
I like adding servo hookups, that is a really good idea. VBatt is 6 volts, so I should not need a switching mode regulator. (Trying to keep cost down. I know they make switch mode regulators that are drop-in replacements for L78XX regulators, but they cost more than this entire PCB will). I am also trying to minimize surface mount parts since I will have to do those myself.
I also like adding PNP and NPN transistors, so just having generic hookup points for controlling small loads?
Well it already has a motor driver built in, and I definitely think adding some plug and play servo headers would be a good idea. And the reason we are not doing an off the shelf solution is three fold. First is cost. We are ordering anywhere from 50 to 200 of these boards and parts. At that price point the bulk buy discounts kick in and the price drops significantly compared to buying in single quantities.
Second is the fact we can control every aspect of the design and parts give the Lab a lot more flexibility compared to an off the shelf solution.
Third, and most important, is we want the students to assemble it themselves. The Lab is designed to be a space for engineering students to innovate and build things. Having them solder the control board for their robot and have a basic understanding of what every part is and what it does I think would be a valuable experience and introduce the students to electrical engineering and mechatronics in a more impactful way than just being given a pre built controller.
As for not going with an ARM,
I love ARM Processors. They are great. But for students who have never programmed before or touched a microcontroller? Arduino ecosystem is a much friendlier place to learn.
Thanks! I will definitely add more access to the VCC and GND rails.
And batteries are tricky. I like rechargable too, but unfortunately I don’t think we want to invest in the infrastructure to recharge 200 batteries. And realistically I do not want to trust a group of college freshman with lithium primary or secondary batteries. I feel like it is just asking for trouble.
As noted on the page, I did not dream up the schematic. I just copied a more devoted robot builder.
I tried my damnedest to make it single sided. I never could get the routing. You’ll notice a few things about my board. Almost all of the pins are broken out to 3 pin headers. The 8 on the right have a pair of jumpers one above and one below. The jumpers allow for 5v or vbat voltage. It was suggested that the vreg have a heatsink, and, my first board lacked mounting holes so this board included a quartet.
I see you are already adding a surface mount chip. Have you considered something like a DRV8835 in place of the L293/SN754410? It can supply more current, can drive from 2 to 11(?) volt motors, and drops less voltage for the motors than the other two chips. Heck, you could design a low power version of the board and use something like a single lithium AA cell or a couple in parallel.
Somewhat related artwork. I haven't done more than lay it out as yet. The intention is to build a board that can drive higher current motors with a footprint like the '293/754410.
Also, unrelated to your question, you mention you are going to use OSHPark for your boards. I am all for supporting American companies, but, 3 of my boards from them cost more than 10 from Seeedstudio. From what I gather, DirtyPCB can offer different colors of solder resist for the same price for 10+/-. I checked 50 boards and they would be $51.
Those are good points, I haven’t used DirtyPCB or Seeedstudio before, so it is probably just a bias towards OSH Parks I will definitely do a price comparison after I finished the revised design and schematic this weekend.
So overall I am trying to minimize the surface mount part number, not really for soldering concerns (I have a reflow oven) but to give the students the opportunity to solder most of the board together themselves and so they can at least have a basic understanding of what each component is and does. The other nice thing is we (the lab TAs) control the motor selection too, so a wider current range isn’t really needed.
Running the board off of 3.3V vs 5V is a really good idea, might help with that whole buck-boost power issue. I will look into that too.