ROS-ArduPilotMega Integration

3689408423?profile=originalPer a suggestion from Chris, I'm working on integrating APM with ROS so that APM looks like an ROS node. I'm a newbie with APM and Arduino, but experienced with robotics in general.

I've done the basics, getting the various IDE's running and proving the concept of outputting APM sensor readings as ROS topics.

What I'm seeking now is input from the community as to what we want this integration to provide. Any suggestions and/or requests would be most welcome!
E-mail me when people leave their comments –

You need to be a member of diydrones to add comments!

Join diydrones

Comments

  • Thanks Chris.  I'll try it out.  This helps a lot.  Now, I don't have to keep rebooting my PC.  I'm learning ROS myself, right now, so might use the my APM as the first try at making a first node.

  • 3D Robotics

    Ellison, I'm afraid you're mistaken. QGroundControl is native Linux.

  • Correct me if I'm wrong, but currently there is no ground station software that runs in Linux. So, before any ROS integration is going to be useful, I think we will need a Ground Station software that runs in Linux.  Otherwise we'll need a Windows PC to run a ground station, another one to run Linux/ROS.

  • On the DIYDrone store, I followed the Arduino link because the docs all say things are based on Arduino, you need the Arduino IDE, etc. That link takes you to the Arduino Mega 2560 card - nice blue card, matching the color in the picture of the controller on the newbie's page. Of course, it turns out that the picture is showing the blue IMU card, hiding the *red* controller card, but that only became clear after the fact.

    So basically I wound up confused because of the emphasis on using Arduino IDE + Arduino hardware, the "Ardu" in APM, etc. - and not realizing that APM doesn't use the Arduino hardware after all. I also found some linkage on the Arduino site, where they mention your name and that there is a connection to APM - hence furthering the notion that somehow Arduino hardware and APM are related.

    As a newbie to DIYDrones, it would have helped if the newbie docs and the site overall made it clear that there is a distinction between the Arduino *Pilot* Mega 2560 board and the Arduino Mega 2560 board of the nearly identical name. My impression was that the only difference is that one came with the APM software, and the other didn't....
  • 3D Robotics
    Ralph: I'm confused. Can you tell me what path you took to buying the board? I can't find any description, including the product listing itself, that doesn't make it crystal clear that you need the APM board.
  • Chris: ouch, that was clear as mud. :-(
  • 3D Robotics

    Ralph, APM doesn't support the regular Arduino Mega 2560 board. It uses the custom APM 2560 board. They're also sold as complete kit.

  • 3D Robotics
    Ralph, MAVlink is handled by the APM libraries, GCS_MAVlink in particular.
  • I Heart Robotics: appreciate the links. I don't speak Windows, but I'll see what can be done with Mac and Linux. I'm a little leery of taking on a project of such broad scope as you describe, though - may be I should pass on this one, but I'll see if perhaps it can be broken into more manageable chunks.
  • Ken: no code posted yet. Need to get the board mismatch solved first, figure out where this MAVLink code sits (since I can't find anything obviously labeled that in APM).

    Once I do get going, I'll post the link to the code.
This reply was deleted.