Suki ROV
Posted: Jul 28th, 2020, 3:18 pm
Hello!
I'm back to build my second ROV! (My first is also published on this forum and is called Skagen ROV is anyone is interested
)
While designing this ROV I was keen to not make the same mistakes as last time, here's a list of some of the things I learnt building my first ROV:
1. DC motors (bilge pumps) are expensive.
Not only are good DC motors fairly pricey, but the real cost is in high amp DC motor controllers, these very quickly become very expensive. Therefore, this time I decided I would use brushless motors. (also as the deal with pressure better)
2.Internet communication is the way to go.
In my first ROV I had two cable, one for serial communication with my ROV and one for video. This was horribly inefficient and the video was terrible quality. This time Suki ROV is going to be communication through one Ethernet cable.
3. Waterproofing is hard.
This time I'm not going to ignore waterproofing!
4. 3D printers and Laser cutters are great tools.
Even in the couple of years since my first ROV 3D printers and laser cutters have only got better, and therefore I'm going to try and use 3D printed and laser cut parts as much as possible in Suki ROV. It's also very fast and cheap to manufacture these parts if you have a local hackerspace/makerspace.
So with these principles in heart and 200£ of a university grant in my pocket, I started designing!
Here we see what Suki will look like! As you can see it has two motors for horizontal movement and two for vertical. Like the Open ROV (on which it's hardware and software is loosely bsed) it has a clear tube which houses all the electronics, webcam. the battery and some other bits and pieces.
The ROV has two side panels, these will be laser cut out of colored acrylic (if I can get my hands on it) on to it will the vertical motors be held in place. The green parts will hold onto the tube, and the two horizontal motors. Two threaded rods will also be attached which will act as the "rails" of the ROV
The Orange part on the top is my preliminary design for floats, but will probably change as I unfortunately don't think I can build such a nice shape.
This is the main tube, in it you can see the webcam, which will be attached to a servo motor allowing it to pan up/down in the tube for a better field of view.
The end caps for the tube will be made using a laser cutter. I will cut many different layers and glue them together and fit O-Rings in between them. This is what the old Open ROV kits did and will save me a lot of money compared to getting them CNC'ed!
Finally here is a schematic of how the software works As you can see, a Raspberry Pi in the robot hosts a website which is made using flask, a python web development tool, and an interface out of HTML and JavaScript. This means that when we plug the Ethernet cable into our computer, all we have to do is type in the Raspberry pi's ip adresss into our browse and we can see this webpage!
The webpage uses "motion" (it's a raspberry pi tool) to stream the video from the webcam. The webpage has some buttons to control the robot, I basically followed this tutorial. https://circuitdigest.com/microcontroll ... ance-robot This works very well, fantastic frame rate and quality. The only issues I had were due to the frame rates being limited in the motion.conf file. However, after I disabled all frame rate limitations, it worked like a charm. Another issue is getting a webpage to read keyboard input and hopefully in the long term an Xbox/PlayStation controller, but I haven't cracked that nut yet (advice/help would be appreciated! I am new to JavaScript!).
The Raspberry pi then talks to an Arduino Nano by serial communication. This is quite simply achieved by a USB cable plugged into both. The Arduino executes the commands send by the raspberry pi. So far this has proved extremely reliable.
Until now, the Suki ROV project had been going very well, however in my ignorance of brushelss motors, I bought these motors and ESCs. These motors work absolutely fantastic, expect I didn't realise that they (like most drone ESCs) usually by default cannot be driven forwards and backwards. So I have spent a long time trying to reprogram my ESCs to be reversible.
Ater a lot of googling, I found out you can reprogram ESCs using something called BLheli, first tried to reprogram them using the signal cable of the input to them. (This is the yellow wire going from the ESC you plug into your micro controller) and using BLheli suite. This did not work. So then I tried using the Arduino as an ISP and connecting the Arduino to the pins on the ESC. Here again I used BLheli suite but I still couldn't get BLheli to recognize the ESC, and ended up just bricking my arduino.
I've spent a week trying to get these ESCs to be reversible and have not succeed at all in fact, I'm not sure what ESCs they actually are. If anyone has any idea what ESCs I have, or how to make them reversible I would very much appreciate it. Here are some pics of them without the Heat shrink.
Again any help or advice on how to program these to be reversible or if there's any cheap alternative ESCs that would work, would be extremely appreciated!
Please ask if I've been unclear at all, I'd love to hear any comments or feedback!
Thanks!
-MantFish
I'm back to build my second ROV! (My first is also published on this forum and is called Skagen ROV is anyone is interested
While designing this ROV I was keen to not make the same mistakes as last time, here's a list of some of the things I learnt building my first ROV:
1. DC motors (bilge pumps) are expensive.
Not only are good DC motors fairly pricey, but the real cost is in high amp DC motor controllers, these very quickly become very expensive. Therefore, this time I decided I would use brushless motors. (also as the deal with pressure better)
2.Internet communication is the way to go.
In my first ROV I had two cable, one for serial communication with my ROV and one for video. This was horribly inefficient and the video was terrible quality. This time Suki ROV is going to be communication through one Ethernet cable.
3. Waterproofing is hard.
This time I'm not going to ignore waterproofing!
4. 3D printers and Laser cutters are great tools.
Even in the couple of years since my first ROV 3D printers and laser cutters have only got better, and therefore I'm going to try and use 3D printed and laser cut parts as much as possible in Suki ROV. It's also very fast and cheap to manufacture these parts if you have a local hackerspace/makerspace.
So with these principles in heart and 200£ of a university grant in my pocket, I started designing!
Here we see what Suki will look like! As you can see it has two motors for horizontal movement and two for vertical. Like the Open ROV (on which it's hardware and software is loosely bsed) it has a clear tube which houses all the electronics, webcam. the battery and some other bits and pieces.
The ROV has two side panels, these will be laser cut out of colored acrylic (if I can get my hands on it) on to it will the vertical motors be held in place. The green parts will hold onto the tube, and the two horizontal motors. Two threaded rods will also be attached which will act as the "rails" of the ROV
The Orange part on the top is my preliminary design for floats, but will probably change as I unfortunately don't think I can build such a nice shape.
This is the main tube, in it you can see the webcam, which will be attached to a servo motor allowing it to pan up/down in the tube for a better field of view.
The end caps for the tube will be made using a laser cutter. I will cut many different layers and glue them together and fit O-Rings in between them. This is what the old Open ROV kits did and will save me a lot of money compared to getting them CNC'ed!
Finally here is a schematic of how the software works As you can see, a Raspberry Pi in the robot hosts a website which is made using flask, a python web development tool, and an interface out of HTML and JavaScript. This means that when we plug the Ethernet cable into our computer, all we have to do is type in the Raspberry pi's ip adresss into our browse and we can see this webpage!
The webpage uses "motion" (it's a raspberry pi tool) to stream the video from the webcam. The webpage has some buttons to control the robot, I basically followed this tutorial. https://circuitdigest.com/microcontroll ... ance-robot This works very well, fantastic frame rate and quality. The only issues I had were due to the frame rates being limited in the motion.conf file. However, after I disabled all frame rate limitations, it worked like a charm. Another issue is getting a webpage to read keyboard input and hopefully in the long term an Xbox/PlayStation controller, but I haven't cracked that nut yet (advice/help would be appreciated! I am new to JavaScript!).
The Raspberry pi then talks to an Arduino Nano by serial communication. This is quite simply achieved by a USB cable plugged into both. The Arduino executes the commands send by the raspberry pi. So far this has proved extremely reliable.
Until now, the Suki ROV project had been going very well, however in my ignorance of brushelss motors, I bought these motors and ESCs. These motors work absolutely fantastic, expect I didn't realise that they (like most drone ESCs) usually by default cannot be driven forwards and backwards. So I have spent a long time trying to reprogram my ESCs to be reversible.
Ater a lot of googling, I found out you can reprogram ESCs using something called BLheli, first tried to reprogram them using the signal cable of the input to them. (This is the yellow wire going from the ESC you plug into your micro controller) and using BLheli suite. This did not work. So then I tried using the Arduino as an ISP and connecting the Arduino to the pins on the ESC. Here again I used BLheli suite but I still couldn't get BLheli to recognize the ESC, and ended up just bricking my arduino.
I've spent a week trying to get these ESCs to be reversible and have not succeed at all in fact, I'm not sure what ESCs they actually are. If anyone has any idea what ESCs I have, or how to make them reversible I would very much appreciate it. Here are some pics of them without the Heat shrink.
Again any help or advice on how to program these to be reversible or if there's any cheap alternative ESCs that would work, would be extremely appreciated!
Please ask if I've been unclear at all, I'd love to hear any comments or feedback!
Thanks!
-MantFish