Thursday, December 13, 2012

MIOS: Multi-Copter I/O Shield for the Arduino Due

  As I previewed in my last post,  I am making an shield to fit the Arduino Due that will simplify connecting the RC reciever, motor ESC, and I/O for sensor communication.  The PCB's for the shield came this week and below are pictures and some explanations.


  Above is the board layout in Eagle before sending it to the fab house.  I used a board fab service called OSH Park.  This service combines many small PCB orders into a large order to spread the cost out between all of the participants.



  Above is the board render I received back from OSH Park after they accepted my design.



  Here is a picture of the board by itself.  The Picture came out a bit blurry, but the actual board is very clean and sharp.  The silk masks are very clean and the gold plating on the solder pads/holes is pretty.  Dark Purple is the only color option from OSH Park, but that seemed like an good alternative to the traditional pea green pcb I could have received from another board service.  I spent a bunch of time with the continuity tester on my DMM making sure everything was routed correctly and there were no shorts or miss directed paths.  Everything checked out as good.



  Here I am test fitting the board to make sure all of the headers will fit in the correct holes when placed on top of an Due.  It's a little hard to see the header pins in the picture since they match the color of the gold plating.  I am happy to see everything fit perfectly.



  All of the header pins are soldered in now including the SPI header in the middle of the board.



  The servo and receiver headers are now soldered in place.




  The voltage divider resistors are in place and soldered.  Since the Due is only compatible with 3.3v signals, I have to reduce the 5v signal that comes from the receiver.  I tested them by applying 5v to each one end then measuring the voltage at the mid point.  All of them were very close to 3.3v.


  Here is a view of the underside of the board with all of the connectors soldered in place.  After taking this picture, I washed the board to remove the solder flux.  This significantly reduced the smudged and dirty appearance near where I soldered.



  Placed onto the Due.  Everything still fits nicely.



  Another angle.

  My next steps will be soldering on pig tails with connectors for attaching sensors.  The I/O holes are spaced correctly for 0.1" connectors, but I am using pig tails on this board so I can attach and detach sensors even when the unit is installed in a tight air frame.

  That is all for now.  Let me know if you have any questions.

  Thanks for reading and please sign up on the right if you want to be automatically notified when I post more updates.

~Phillip

<< Previous Quadrotor Post | Next Quadrotor Post >>

4 comments:

  1. I believe that with such improvement on the project's hardware you're also changing the code. Is it available for download? Could you comment on how it is (if it is) changing?

    Thanks,
    André.

    ReplyDelete
    Replies
    1. André, the code is undergoing a complete re-write. I am creating libraries for all of my sensors, data filters and etc... This should make it easier for me to modify and adapt my code. I am also adding a GPS to the system. With the Due, some of the critical orientation variables have changed from float to double to reduce rounding error. Given the increase in performance, this should be a trivial increase in work.
      At this time I have no intention of releasing my multi-copter code for the 8-bit Arduino processors. The work required to make it presentable for public release is not worth my time given the number of great options already out there.
      I will consider releasing my code for the Due once I am happy with it. Which may be a while as I do this as a hobby on my own time (when I have some). Also, flying outside in Minnesota during the winter is not the most fun thing ever, so testing gets delayed regularly. I'm also building a new air frame which will take a while.

      Delete
  2. How could someone get a hold of one of these io shields? Are you willing to share the eagle file?

    ReplyDelete
  3. Phillip, I just stumbled upon your blog and it seems you and I are attempting to achieve the same goals, though you are a bit further down the path than me. It has been almost a year since your last post. How have things gone for you? I would love to hear about your progress with the quadcopter and the Arduino Due.

    ReplyDelete