Notifications
Clear all

Zalophus: A robot

18 Posts
4 Users
7 Likes
1,542 Views
Valerio
(@valerio)
Member
Joined: 2 years ago
Posts: 69
Topic starter  

Hello everyone

I hope you're all well.

 

Yesterday I started putting together a robot that I had designed last week.

This robot will be controlled by a computer program, and will communicate with the computer using bluetooth.

It will have a rotating infrared rangefinder that will send data to the computer, which in turn will create a map of the surrounding area using the data.

This way you can see what's in front of the robot even if it is in another room.

Zalophus

The robot has two motor wheels and one ball caster.

The microcontroller board used is an Elegoo Arduino Uno.

The motors are solarobotics GM9

The motor board is an L298N

The rangefinder is a VL53L0X on a breakout board.

The power source are 4 NiMh AA batteries

 

I hope you like this project (by the way, the name comes from the scientific name of a sea lion family).

Have a nice day!

 

 

 


   
Duce robot and Inq reacted
Quote
Inq
 Inq
(@inq)
Member
Joined: 2 years ago
Posts: 1900
 

@valerio - Certainly do like it!  And the name sounds appropriate.  I imagine the robot's gate will be similar to a sea lion's.  

I've used the GM9 type motors and L298N on a remote control style robot.  I look forward to your progress... especially with the mapping and computer control. 

VBR,

Inq

3 lines of code = InqPortal = Complete IoT, App, Web Server w/ GUI Admin Client, WiFi Manager, Drag & Drop File Manager, OTA, Performance Metrics, Web Socket Comms, Easy App API, All running on ESP8266...
Even usable on ESP-01S - Quickest Start Guide


   
ReplyQuote
Valerio
(@valerio)
Member
Joined: 2 years ago
Posts: 69
Topic starter  

@inq

Update:

Zalophus Finished

I've managed to make the motors work, without too many issues.

I've also managed to make bluetooth control work as well.

 

The issue is that when I tried to implement usage of the servo it overheated and released smoke.

I don't want to simply plug in another servo, because I'm afraid that it will burn like the first one.

And this issue ended up being the last straw when it comes to continuing this project, since the chassis has quite a few mechanical flaws and the robot sometimes becomes incapable of moving forward or backward, even though the wheels spin in the right direction.

 

I may finish the project in the future (or more likely start

over), but for now i will leave it as a simple bluetooth control car.

Which is already something I haven't done before.

 

I'm still relatively happy about this project, although it could have been better if I ordered the components

before designing the 3d printed objects.

 

Have a nice day

 


   
Ron reacted
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 3 years ago
Posts: 6662
 

Knowing when to start over is a valuable skill that many never master.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
Sure you can learn to be a programmer, it will take the same amount of time for me to learn to be a Doctor.


   
ReplyQuote
(@mark-bolton)
Member
Joined: 3 years ago
Posts: 108
 

I like to start with a rough as guts prototype and incrementally tidy it up.

 

Cheers M


   
ReplyQuote
Inq
 Inq
(@inq)
Member
Joined: 2 years ago
Posts: 1900
 
Posted by: @valerio

And this issue ended up being the last straw when it comes to continuing this project, since the chassis has quite a few mechanical flaws and the robot sometimes becomes incapable of moving forward or backward, even though the wheels spin in the right direction.

I suspected you'd have troubles when I saw your original image.  There is a fundamental mechanical engineering concept that I take for granted that does not seem to be common knowledge. 

Engineering term - The further the distance of a weight from the axis of rotation, the harder it is to turn and it is a function of the square of the distance.

How this would greatly help your design - The axis of rotation (when trying to Yaw) for your robot will be half way between the two driven wheels.  You should always put the heaviest things directly over this point.  I noted your battery is in the worse possible place at the far end away from your driven wheels.  As a side benefit having the weight over the wheels, gives them more traction.  Put the lightest things furthest away.

Maybe you can use hot glue or something and re-organize your pieces on your chassis.  If you do you will find your robot moves and yaws quite nimbly.

VBR,

Inq

3 lines of code = InqPortal = Complete IoT, App, Web Server w/ GUI Admin Client, WiFi Manager, Drag & Drop File Manager, OTA, Performance Metrics, Web Socket Comms, Easy App API, All running on ESP8266...
Even usable on ESP-01S - Quickest Start Guide


   
ReplyQuote
Valerio
(@valerio)
Member
Joined: 2 years ago
Posts: 69
Topic starter  

@inq

Yes, you're right, it will probably help even though the robot already turns quite quickly on the spot.

I've actually fixed the servo issue, but due to a hardware issue with the infrared sensor I'm forced to suspend this project until either I get another sensor or I create a holder for an HC-SR04 that will replace it.

But what I'm going to do is probably to move on to a completely new chassis where I fix this and other mechanical issues like wrong size for screw holes and the lack of a hole for the servo cable (the cable was supposed to get under the chassis, but there is barely space for the servo alone).

And that's if my next project is a redo of this one, which I'm not sure about.

 

Anyways, thank you for the suggestion.

 

Have a nice day

 

 

 


   
ReplyQuote
(@mark-bolton)
Member
Joined: 3 years ago
Posts: 108
 

@valerio On a Philosophical note; when I was in Industry - I was very expensive - and being paid to play about was never an option. When things all got a little bit too much, the Samson Option (burn it all down and Return to Go ) was often a Savior. One can mess about and pour more time and money into a lost cause ... I believe it is called the Sunk Cost fallacy or some such. "You are so close but yet so far away." Chuck it in the bin and start over. I know it is brutal but "tinkering" can be such a trap. I know this approach represents an asymptote but it has saved my sorry hide more than once. 

I tend to err on the side of Samson with Linux. I am more likely to crack the whip and reinstall and set it up again and get my system going in twenty minutes, in preference to  finding out what exactly was causing my OS to spit up fur-balls ..alas my curiosity was not satisfied but I "got on with the job" ...

My first foreman after I graduated from Trade School was Swiss and a God in my eyes. He called me over once and asked "Mark - can you explain the Correct Use of Pockets? ~pause~ When you are not sure what is going on you put your'e hands in them" Brilliant advice and over the years it saved my employers millions. But, logically, at some point, one must remove one's hands from one's pockets and get the machine going again.

Kindest of Regards

 

M


   
Inq reacted
ReplyQuote
Valerio
(@valerio)
Member
Joined: 2 years ago
Posts: 69
Topic starter  

@mark-bolton

@inq

Yesterday I've started assembling a second version.

It will use an arduino nano instead of an uno so that the connections are done on the protoboard and are more stable.

It will also use an HC-SR05 since it is easier to work with (i wanted to create a proper support, but it did not work and I ended up hot-glueing it to the support).

There are also many other changes such as an extra prototyping board for future experiments (I was thinking about using a BJT to power some LEDs, in order to learn how to use transistors), a hole for the servo cable (it was supposed to go down and then up near the protoboard, but it did not have a dedictead hole in version one), ability to unscrew the motors from the chassis together with the supports (though detaching the latter from the motors is more difficult as the supports' screw holes were printed with the wrong distance and  I had to use hot glue again), and lastly a single 5v line powered by a 3amp regulator that powers everything , except the nano, which gets power directly from the 18650 batteries.

There are still a lot of changes I would do in a version three, such as replacing the raised part under the protoboards with proper spacers and adding a place for the voltage regulator (currently it's glued on two pieces of wood glued to the chassis.

But overall I'm happy with tbe improvements, especially the more reliable connections that replace cables going into the headers of the Arduino Uno.

Best regards,

Valerio

 

 


   
THRandell and Inq reacted
ReplyQuote
Inq
 Inq
(@inq)
Member
Joined: 2 years ago
Posts: 1900
 

@valerio - A couple of things

  • Post pictures - We like pictures. 😉 
  • HC-SR05 - I didn't know such a beast existed and with my 128 kbit Internet feed (on a good day) I couldn't find much on it.  Care to elaborate on what it does different/better?
  • The Uno is very tolerant of input voltage.  I know ESP8266 won't work directly from a 18650.  If you're good about watching its bottom-end voltage and turn it off at 2.5V (3.0V is better) the ESP will tolerate that, but the 4.2V after a full charge will fry it. (Ask me how I know 🙄)  Are you sure the Nano is as tolerant as the Uno?

VBR,

Inq

 

Edit:  I'm guessing you're using two 18650s.  Is the built-in regulator on a Nano good for 5V to 8.4V?

3 lines of code = InqPortal = Complete IoT, App, Web Server w/ GUI Admin Client, WiFi Manager, Drag & Drop File Manager, OTA, Performance Metrics, Web Socket Comms, Easy App API, All running on ESP8266...
Even usable on ESP-01S - Quickest Start Guide


   
ReplyQuote
Valerio
(@valerio)
Member
Joined: 2 years ago
Posts: 69
Topic starter  

@inq 

1)I will probably take some pictures when I make further progress.

The robot is still unfinished.

2)The HC-SR05 has a slightly longer range than the HC-Sr04 (4.5 meters instead of 4)

and has an analog output as an alternative to pulse duration reading (I think it's called TTL).

3)I think the nano can work from 7v to 12v well, and also below 7v although that may cause issues.

I will probably try to turn off the robot before reaching 7v.

Yes, I'm using two 18650.

 

Best regards,

 

Valerio

 


   
ReplyQuote
Valerio
(@valerio)
Member
Joined: 2 years ago
Posts: 69
Topic starter  

@inq

Since you wanted to see pictures, here they are.

Zalophus 2 (2)
Zalophus 2 (1)

Today I've finally made the motors work.

However PWM did not work, so I will have to figure out how to fix it.

Also, the bluetooth module did not receive the messages from the computer, even though

the module is on and it is recognized as a bluetooth device.

More things that need to be sorted out.

 

Best regards,

 

Valerio

 


   
Inq reacted
ReplyQuote
Inq
 Inq
(@inq)
Member
Joined: 2 years ago
Posts: 1900
 

@valerio hey... You'll get it going soon. I'm confident.  

3 lines of code = InqPortal = Complete IoT, App, Web Server w/ GUI Admin Client, WiFi Manager, Drag & Drop File Manager, OTA, Performance Metrics, Web Socket Comms, Easy App API, All running on ESP8266...
Even usable on ESP-01S - Quickest Start Guide


   
ReplyQuote
Valerio
(@valerio)
Member
Joined: 2 years ago
Posts: 69
Topic starter  

@inq 

Thanks for the encouragement.

Unfortunately PWM control does not work on the L298N unless you use a voltage higher than 5v

(I don't know exactly how much higher).

Since I fear doing that may damage the motors (even though Zalophus 1 had the same motors running on battery voltage) I will not be able to use pwm.

I'm also having an issue with bluetooth: the HC-05 connects, but does not receive or transmit data evn though the connections are correct.

If you know how to fix this, please tell me.

Best Regards,

Valerio

 


   
ReplyQuote
Ron
 Ron
(@zander)
Father of a miniature Wookie
Joined: 3 years ago
Posts: 6662
 

@valerio As far as Bluetooth goes, I also have Bluetooth problems with several devices acting up. I have never discovered a way to fix the problems, all I can do is keep trying, reseting, etc, and eventually it magically works again. As far as I can tell this is normal behaviour for Bluetooth.

First computer 1959. Retired from my own computer company 2004.
Hardware - Expert in 1401, and 360, fairly knowledge in PC plus numerous MPU's and MCU's
Major Languages - Machine language, 360 Macro Assembler, Intel Assembler, PL/I and PL1, Pascal, Basic, C plus numerous job control and scripting languages.
Sure you can learn to be a programmer, it will take the same amount of time for me to learn to be a Doctor.


   
ReplyQuote
Page 1 / 2