-
Notifications
You must be signed in to change notification settings - Fork 1
Description
Description
Thruster system will be revamped from ESC perspective as old ones kept frying themselves to death X)))))))))
Electrical will get 8 new ESCs (we only need 4)
These ESCs need to be flashed and configured to allwow propper control and failsafe implementation
Electrical will upgrade failsafe PCB on ASV to include a inbuilt PWM IC for all the 4 new ESCs on board
Our objective is to controle ESCs through this PWM IC from RPI on board. Here is the though process
ROS -> PRI -> Failsafe PCB -> PWM IC -> ESCs -> Thrusters
We willl also have to add a rampup for thrusters (ie, instead of giving 100% power, it slowely creeps up from 0 to 100% in 1 second). We need rampup since going from 0 to 100% instantly creates a lot of EMI at the same time as we get a startup current rush effect witch after a while damage ESCs.
Tasks:
- Talk to Electrical on what type of ESCs we are getting (We got some unknown Thust ME ESC form Cina with no serial code X-X)
- Flash new ESCs to have proper Controls, Telemetry activated, rampup time, undervoltage and overcurrent protections as well as some nifty settings for later development stages.
- Talk to electrical on what type of PWM IC they are going to use on Failsafe PCB for ASV
- Start by looking at old code for ESC Driver and reading up on information on Thruster system on Wiki
- Select Pins for new Failsafe PCB
- Merge ESC, RC Controller, Failsafe, LED and I2C comunication code into one single folder and code as we are going to use one single controller for everything, ATmega2560-16AU
- Create a Prototype ESC Driver that interacts from RPI to PWM IC on Failsafe PCB. Include PWM rampup here (Dont have to have perfect code at this stage)
- Take Prototype ESC Driver code and make it into a full fledge "Library" that when imported in other files you can run thrusters through a function. Make sure this code is clean and well written, this is because we will later in the year build upon this "library"
- Use this new ESC Driver library for ASV and implement a ROS Node that listens to a thrust topic, converts thrust values into PWM and uses ESC Driver library to send those PWM signals to PWM IC on Failsafe PCB
- Test fully fledge system out
- DOCUMENT!!!
Usefull links:
- Old ESC Driver code: https://github.com/vortexntnu/pca9685-interface
- ASV Failsafe PCB: https://vortex.a2hosted.com/index.php/Freya_Hardware#The_Fail_Safe_System
- How to flash ESCs concept: https://vortex.a2hosted.com/index.php/Freya_Hardware#Flash_ESC_firmware