Erlerobotics has an open “ROSimple/Robot_blockly” ROS package that provides web-based visualization and block programming tools for robots and drones.
How much would it take to use this to program a Navio+ with ROS and/or APM installed?
Maybe just a Navio “Robot Block”?
-I don’t know all the hardware differences(both RPi) but if ROS received its data from APM via MavROS some hardware changes wouldn’t matter.
I was just looking for an easy way to add cv(opencv?) obstacle avoidance to APM, but having a easy ROS on Navio would have so many cool opportunities it just seems like a great idea in general.
Probably a rover with slow speed. Maybe something a RPi 2 could handle in addition to APM.
ROS was used with some of DARPA’s Robotics Challenge which are all semi bipedal. Specifically the Atlas robot which is the default platform for the competition.
SONAR_TRIGGER is the distance at which you want the sonar to start to cause a steering deviation when an object is detected. We typically use 300cm (3 meters)
SONAR_SCALING is the value used to convert the input voltage into distance. Since we use the MB1240 sonar, our scaling parameter is 2.04 which is based on 4.9mv/cm @5vdc.
SONAR_TURN_ANGLE is the angle, in degrees, the steering will make when the trigger distance is detected. A positive value will cause a right turn and a negative value will cause a left turn when only one sonar is in use. We typically use 25 degrees for that.
SONAR_TURN_TIME is the amount of time that the steering will deviate when the trigger distance is detected. Defaults to 1 sec. We’ve actually used a smaller value (0.2 seconds) in the below so it doesn’t turn away as long (we just want it to veer, not turn around)
That was the intial plan and CV was the next step up.
When using sonar I would need two sonar sensors (right/left) so you know which way to turn when you meet an object. Luckily navio has two aux. ADC ports. I just have to get their mounting right so the detection zones don’t overlap. But they can overlap (left/right detection in APM sensor code.)