Have your robot navigate using a GPS to waypoints and paths.
How to add the BN-880 GPS Compass robot skill
- Load the most recent release of ARC (Get ARC).
- Press the Project tab from the top menu bar in ARC.
- Press Add Robot Skill from the button ribbon bar in ARC.
- Choose the Navigation category tab.
- Press the BN-880 GPS Compass icon to add the robot skill to your project.
Don't have a robot yet?
Follow the Getting Started Guide to build a robot and use the BN-880 GPS Compass robot skill.
How to use the BN-880 GPS Compass robot skill
Use the Beitian BN-880 GPS/Compass sensor for autonomous navigation from predefined waypoints. View a map of the surrounding area to specify waypoints in real time. The robot can navigate between the waypoints using the combined GPS and Compass of the BN-880 sensor.
*Note: This robot skill does not use the ARC NMS (Navigation Messaging System). This is a standalone robot skill that will perform its navigation.
BN-880 Features
Electrical Characteristics:- Receiving Format: GPS, GLONASS,Galileo, BeiDou,QZSS and SBAS
- Receiving Channel: 72 Searching Channel
- Output Frequency: 1Hz-10Hz (default 1Hz)
Startup Time:
- Cold Start: avg26s
- Warm Start: avg25s
- Hot Start: avg3s
GPS Accuracy:
- Level Positioning Precision: 2m At Open Wind
- Speed Precision: 0.1 m/s (Without Aid)
- Acceleration Precision: 0.1 m/s (Without Aid)
Power consumption:
- DC Voltage 2.8v~6.0v (Typical:3.3v or 5.0v) - Consumption: Capture 50mA@5V
Dimensions:
- Size:28mm x 28mm x 10mm
- Weight:10g
Main Display
Map Cache
Because many robots lack internet connection or are unstable, this robot skill will cache the maps. The maps will be downloaded and cached locally as you use the robot skill with an internet connection.Arduino Required
This robot skill requires the BN-880 to be connected to an Arduino. The Arduino is connected to the ARC PC via a USB port. Because the sensor only uses six wires, the smallest form factor Arduino that supports a Serial1 and I2C can be used. We recommend an Arduino Pro Micro or similar.The Arduino code must be edited to configure some settings. Specifically, you will need to set your 'Declination Angle,' which is the 'Error' of the magnetic field in your location. Instructions are provided to do that in the Arduino source code INO file.
Wiring To Arduino
There are six wires to the Arduino from the BN-880. Review the datasheet for your Arduino and connect the following wires from the BN-880 to the Arduino.- Connect the BN-880's SDA (pin 1) to the Arduino's I2C0 SDA pin
- Connect the BN-880's GND (pin 2) to the Arduino's GND pin
- Connect the BN-880's TX (pin 3) to the Arduino's RX1 pin
- Connect the BN-880's RX (pin 4) to the Arduino's TX1 pin
- Connect the BN-880's VCC (pin 5) to the Arduino's +3 or +5 pin
- Connect the BN-880's SCL (pin 6) to the Arduino's I2C0 SCL pin
Download Arduino Code
Before programming the Arduino on the specified port, you must close the robot skill. This is because only one software can use the port at a time.Download synthiam_bn-880_firmware (Version 20221124).zip
I do have the BN-880 GPS
loaded the ARC zip file to my Arduino, compiled fine
Does this control work with a Arduino Uno?
I tried it to the ARC serial terminal, it connects
I just loaded some other scripts for the BN-880 GPS - works
I went back to load your firmware, all I get is an error, Compilation error: 'Serial1' was not declared in this scope
Read the part about "Arduino Required" in the manual above
Oh, should add that I don't think this robot skill is completed. I tried it, and it seems to be missing the ability to navigate. And I was unable to create waypoints, so maybe there's another version coming soon.
I saw this Because the sensor only uses six wires, the smallest form factor Arduino that supports a Serial1 and I2C can be used. We recommend an Arduino Pro Micro or similar.
It compiles now but only connect to the ARC PC Serial terminal - for a test
says $GPGSV,2,1,06,04,,,19,05,,,j883 Magnetometer Test
13,2342 $GLGSV,1,1,0065 $GNGLL,,,,,003429.00,V,N*58 HMC5883 Magnetometer Test
Why would you use the serial terminal? This is a robot skill. What did you do to make it compile? It looks like you changed Serial1 to Serial0, expected it to work, and loaded the serial terminal for some reason.
This robot skill firmware only works with Arduino's that have Serial1. It says that in the manual
Ok, I received my Arduino Mega with the Serial1
It connected; I see the map.
Waiting for another version coming as you stated above, thanks again
Good morning
DJ, I know you are busy but
you said: Oh, should add that I don't think this robot skill is completed. I tried it, and it seems to be missing the ability to navigate. And I was unable to create waypoints, so maybe there's another version coming soon.
Thanks, when you get time...
It's not my robot skill. The author will finish it when it's done i'm sure
EZ you're into all the good stuff! Will be waiting for it just like you.
I would like to see this skill completed as well. I'll have to check if I have one of these sensors with me to test it. But I think the plan was to have something similar to The Better Navigator. The resolution isn't high enough to work with a slam, though, which requires mm accuracy.
A GPS can occasionally present an accurate value - at about 1 in 100 readings or so. It mainly jumps by a few meters per reading. GPS is not a suitable location sensor for most use cases. If your robot is going to be moving across a field or navigating down the street, it would be okay. Then you can combine a GPS with a SLAM.
So the idea would be to use the GPS to get your robot to an area. Then, use the SLAM The Better Navigator to fine-tune the navigation.
As I'm getting deeper into these skill it is becoming more obvious that you really need a kick butt computer like a gaming computer to handle the workload of the camera/multiple cameras, lidars, multiple sensors etc. I have the skills working individually but if I combine them it gets bogged down. I have cm level precision GPS in mind with RTK for whenever you get the gps skill that I can have it talk to.
Checking in to see if there has been any headway with GPS with/without RTK working with ARC. I see these football field line drawing bots with cm accuracy and would like to make one.
By scrolling to the top of this document, you will find instructions for using this robot skill. There are also instructions to install the robot skill if you do not already have it installed. There is limited information on how to use the robot skill for your application of a football field drawing robot. It does not appear that this robot skill works with RTK, as I'm unfamiliar with it. This particular robot skill is limited to the features supported by the hardware.