Robot Body November Update

All Commercially Available Parts

There are no custom parts, and all parts can be found on the major commercial websites and then some. I’ve done my best to keep soldering to a minimum and only use through hole components for ease of assembly and not requiring any expensive tools or more than basic technical skills. This way, anybody with $50USD can build a basic robot that can be customized and added according to their tastes and skill level. This isn’t an over simplified toy that you can’t really do much with, but a basic robot that you can modify it through adding devices and by altering it’s code.

Advanced Features

Through hardware and coding, this robot will have many advanced features such as encoders, a range finder, monitoring and updating via wifi, have it’s own webserver, battery management, having a lot of I/O pins and programming space. It’s all possible due to inexpensive parts and using two popular microcontrollers that compliment each other quite well, in my opinion.

Argh! Brains! Argh!

I know it’s not October any longer, but I couldn’t resist. The robot will not be lacking for computing power, though. One is an Arduino Uno, which uses a robust atmel single chip computer and the other is a WeMos Mini Pro that uses an ESP822-12 board that has built in wife. Both can use sketches made on Arduino IDE, which is a plus. They each have their strengths and weaknesses, but together they make for a very robust package.

The main strengths of the Arduino is the amount and types of I/O pins that provide digital, I2C, analog, PWM and more through it’s onboard firmware that is built in, and a decent microprocessor that is fairly quick at 16Mhz. It’s only real weaknesses are the amount of programming space, which is limited to 32K and that isn’t bad, since you can pick up a good clone for about $10USD.

Where the Arduino Uno style boards lack memory, the ESP8266-12 based microcontrollers more than make up for it, with 4 or more MB of memory and being Wi-Fi enabled, but most of it’s I/O pins are digital, with one PWM and an analog pin, which makes it’s an awesome board for IoT and such.

Looking at IoT sites is where I came up with the idea of using an ESP8266 based board to to monitor and control the robot with. Once I started playing with it, I realized that it had way more potential that I had first thought. At 60Mhz and have 4MB it’s going to run circles around the Arduino and will have higher level duties such as webserver, host any artificial neural networks, data logging, and host any large files such as maps, etc.,.

A Pic of the Robot sans wires

Waiting on a delivery of Dupont style connectors to wire up the sensors, etc. Will be soldering the headers for the WeMos on the shield this weekend.

Mx Robot’s Sensor Pack

Today’s Topics!

Robots need sensors to gather data and hopefully not harm their environment. Mx Robot will have quite a few and I’ll explain why I choose the ones that I did. Why the ‘Mx Robot’?

Why Do Robots Need Sensors?

Robots need sensors in order to gather data about their environment and various parts of themselves. Such things as not running into walls without harming the environment and the entities that share it with the robot is important. Also being able to sense the remaining battery life so that the robot can use that data to either go charge or complete it’s next task is very important to the battery health and the mental health of the human that is associated with it. If your robot is knocking stuff over or destroying your things, it’s not really an asset to you. Sensors provide the data and the robot’s code interprets the data according to how it’s programmed. The types of sensors that you use in your robot just as important as the code that interprets their data, one is only useful as the other.

Sensors For Mx Robot

So what sensors have been chosen and why for the robot? So far, I really don’t have a hard list of tasks Mx Robot to do. Some ideas have been nightly patrol and getting a can of soda from the fridge, perhaps an individually packaged snack from the pantry. These are lofty goals and will require a lot of coding and robot designing to accomplish, so starting off with a generic robot and letting things go from there, but sensors are very important no matter the tasks the robot will be doing, especially since it’s not in a closed environment by itself.

Working from front to back and looking at the insides of the bot. The line following module is in the very front, it’s primary use will be lining up the robot to it’s charging base. Working back a bit, there will be two SR-04 sonar modules that will be providing data about any obstacles in the front and to the sides of the robot. The back end will have two IR pairs for object detection for obstacles behind the robot. Internally, there will be encoders on each drive shaft, an accelerometer and gyroscope package, and voltage sensors on the batteries. As you may have surmised already, most of the sensors are devoted to keeping the robot on it’s path and away from obstacles, thus far.

Should Robots Be Genderless?

I’ve been thinking about the current times and all the changes taking place, plus how sexist things are, which has started another set of thoughts altogether. Why do we consider robots to have one gender or another, is it wishful thinking or just the norm? Industrial robots probably shouldn’t have human names, but something made up of letters and numbers to identify them, because saying,”Leroy’s connectors need some jingling” would be awkward and the resulting comments probably would get some people fired(Me).

One of the issues that I foresee about assigning gender to a robot is that it may be programmed to act in the society norms of that gender and either allow itself to be abused in some way or be treat humans of the opposite or same gender as norms of the society it is in. Some would argue that having gender would make the robot more acceptable by humans, but I find that to be a sexist excuse to keep spreading those sexist views and not something that would engender good feelings in the long run. Androgyny should be the go to for most robot designers, this is the 21st century and we should as a society grow enough to accept all genders and treat people and machines with respect and not force our own views onto others

That is why I changed Mr. Robot to Mx. Robot, to reflect that it should be accepted as genderless, not a threat to anyone and that it is here to assist within it’s limited capabilities.

P.S.

If you like what I do, please consider sending a few bucks my at http://www.ko-fi.com and my ID there is MechGeek2k, as well

Mr. Robot’s 2nd Post

By the end of the week, there should be a complete pair of tracks ready to mount on a chassis. The chassis is still in the design phase, though. It has to hold the dual gear motor assembly, and six 18650 batteries in appropriate compartments, eventually a triple axis accelerometer, a set of charging studs and be resilient enough to take moderate knocks without breaking, not to mention the amount of wires going to and fro to the micro controllers, dual H bridge, motors, etc.,. A lot of thought is going into this part, because the decisions made now will affect the the design of the rest of the body and it’s capabilities. Something tells me that I am either going to go through a lot of electrical tape or heat shrink(which I’m sure it’s not the size that I have). The good news is that it will all fit, and that there will be no laws of physics or even bent to get it all in there(fingers crossed, cuz the fine for trying to break the laws of physics is failure). Time just has to be set aside to finish the designs and the last unopened spool of orange PLA loaded onto the Creality Ender 3, so that the idea of the chassis is made physical.

So there is a completely finished track, pic below:

<insert here>>>>>

2nd Level Robot, or Taking It to the Next Level

I was looking at the specifications of the ultrasonic range sensors in the SR-04 family, and yes they wide cone that can detect an object at a good range, it initially seemed to create some issues. I was thinking of making the bot body taller so that it wouldn’t be creating false triggers, and thought of putting the receiver module part of it in a tube so that it wouldn’t receive pings of the bot body and a few other off the wall ideas that probably wouldn’t work, anyways. So the final solution that got the go ahead to be designed for was…..wait…..dun dun dunn!….Put two sonar modules and get the twice the data to sort!! What does this solve? A lot really, if you mount at 90 degrees apart of each other then they will be closer to the outer perimeter of the bot body, which means it can be shorter, the servo doesn’t have to make a full sweep for the sensors to get enough data for the micro controller to form a map for the main micro controller to decide how to proceed and if the robot is following the plotted course.

The Pic as Promised