I am starting a project to develop an autonomous bait boat. I already have the boat and access to most of the required components. My main need is assistance with the coding. I have a basic understanding of programming, but due to the complexity and the risk of damaging the boat, I’m seeking help from someone with more experience in embedded systems and robotics.
Project Objectives:
Implement Manual Mode and Auto Mode:
Manual Mode: The boat is fully controlled via RC transmitter with no GPS influence.
Auto Mode: The boat autonomously navigates to pre-programmed drop points and operates a bait-release mechanism.
Enable Waypoint and Home Position Programming:
Use the transmitter to:
Save drop zones (multiple) by pressing a button at the desired GPS location.
Save the home location similarly.
Bait Drop Logic:
After reaching a drop zone, the bait bucket is released using a servo.
The boat then travels a short, preset distance at 90° to the drop path to avoid fishing lines before returning to the saved home position.
Display relevant data on the transmitter:
Boat speed
Battery level
Distance to home
Mode status (Manual or Auto)
Proposed Components:
Microcontrollers:
Arduino Nano or Uno (considering using two Nanos: one for GPS parsing, the other for main control logic)
GPS Module:
NEO-6M for real-time GPS coordinates
Compass Module:
LSM303DLHC for heading/bearing information
Motor Control:
Brushed motor ESC for controlling the DC propulsion motor
Remote Control:
FlySky FS-i6X transmitter with IA10B receiver for manual control and mode switching
Additional Components:
Servo motor for bait bucket release
Battery voltage sensor
Optional: OLED display or telemetry module for additional onboard diagnostics
Notes:
Flexibility is built into the design: components and control logic can be changed if needed.
The project is expected to evolve, with future features added over time.
Request:
I am looking for assistance specifically with coding the autonomous logic, GPS waypoint handling, heading control, and transmitter integration. If you’re experienced with Arduino or similar robotics projects, your help would be greatly appreciated.
If you think Ardu pilot is costly, maybe you should evaluate certain options here.
Since I have had some experience working on Autonomous systems, I'd like to give you an overview.
The first step would be to make the boat "drive by wire", meaning you have to retrofit an electromechanical solution such that the boat can be fully operated through control signals from your transmitter. That's your first challenge.
That's manual mode. In case of auto mode, things get more complicated. GPS + IMU data would need to be fused for localization. But you would still require a perception system - lidar, radar or camera. Why? Because you need to plan your path, perform lateral & longitudinal control and avoid obstacles. All this combined with a pre-recorded map is the safest option, as you need to make sure the boat follows the most optimized path.
So, the point is, this is not project you can hack over a weekend - it requires lots of work.
Are you sure you have the budget and time for the same?
You seem to be confused. Ardupilot is high quality open source software that does almost all of what you are asking for, is free to download and runs on a wide variety of dirt cheap MCUs.
As others have suggested, perhaps you are not yet prepared to undertake a project of this complexity.
As an adolescent I built a short, can-cannon out of canned vegetable cans, a can opener and electrical tape that launched a tennis ball 100m. Fuel could be any volatile aerosol.
DIY bait and lure, air-pressure launchers can be found online which use sched 40 PVC, saw, vulcanizing fluid and a release valve.
Thanks for the reply, The boat is already RC so it operates on manual mode through the transmitter already. I need to add the autonomous part to the already existing boat.
I will obviously need to do proper testing and wont hold the contractor accountable for damages, I just need to lower the risk of this by making use of someone that has more coding experience to prevent any possible programming errors.
I don't think that anyone here will give you the code you need for free
As this project seems to be beyond your capabilities, maybe you should hire someone to write the code for you.
It is like any ball-and-goal game... factor force, angle, wind speed and wind direction, and be as accurate as military GPS.
My father and I went fishing over vacation. On the first day, we caught nothing. The next day, we started out the same, with no catches, so we moved to another part of the lake. Within minutes we had a bite, then a catch, then our limit. My father said, "After we finish these fish, we will have to come back to this same spot." To ensure we found the exact spot, I took out a sharp knife and carved and "X" on the bottom of the boat.
It seems you do not understand how complex computer programs are developed. They are done one stage at a time and will require testing of each stage, likely multiple times. Are you prepared to do multiple tests each day and are you qualified to report the results back to the developer? How much test equipment do you have to be able to record the results of the testing?