Prototype for a Sustainable Locomotive Home

by Squidinator in Circuits > Arduino

522 Views, 2 Favorites, 0 Comments

Prototype for a Sustainable Locomotive Home

thumbnail_IMG_2218.jpg
manidk v10.png

This project came about from an interesting concept I recently discovered: The hypothetical VLS megastructure. This gargantuan construction would be a moving city that performs important ecological tasks while slowly spanning continents. Although this is purely theoretical, the idea inspired me to think about how humanity may need to redefine our own habitats and living spaces. In the future, it may be necessary for some to live in moving homes, which can disperse any harmful effects of human habitation into a large area and monitor or improve nature wherever they roam.

What would be needed for these living spaces to come into existence? If they are to be completely sustainable, they will require renewable sources of water, food, and energy. There will also need to be methods of waste disposal and movement control, so we can direct the home to where it is needed. For ecological conservation and renewal, sensors could detect nutrient levels in the soil and chemicals in the atmosphere. Additionally, there could be automatic planting processes that disperse the seeds of native plants as the homes move.

This is quite a large laundry list of potential systems that would go into the design of this concept. To start off, I decided to create a rendering on Fusion 360 of some of the simpler requirements to help visualize my ideas. This rendering contains a rain-catcher and small farm for renewable sources of water and food, and it has a composter for reusing waste to improve the environment. Lastly, I decided to tackle the issue of energy with the most renewable, widespread form possible: solar energy.

As the focus of this project, I decided to create a small, functional prototype of this design. Given that the rain-catcher, farm, and composter are not viable at a smaller size, I focused on the energy aspect of this project. Additionally, I implemented a remote-control system that could theoretically be used to control a life-size version of this prototype. My steps towards the creation of this project are documented below, so readers may create their own version if they desire. This is intended only to be a conceptualization of a small component of the larger idea, and I hope to add additional functionalities in the future.

Supplies

thumbnail_IMG_2221.jpg
thumbnail_IMG_2220.jpg
thumbnail_IMG_2219.jpg
thumbnail_IMG_2222.jpg

Here are all of the tools and materials I used to create this project. I’m including links to buy some of these, but feel free to buy products from other brands if you prefer them. All of these items are pretty generic, and you can easily find substitutes.


Tools:

CAD Software (I used Fusion 360, but you can just download the files I already designed.)

3D Printer/3D Printing Service (for the chassis)

Crimping Tool and Connectors (Many of the electronics come with different connectors, so you’ll likely have to replace some of them so it’s all compatible. With the products I bought, I ended up having to buy Tamiya connectors and JST-XH connectors.)

Soldering Station (for soldering connectors onto the solar charger, as well as soldering connectors if necessary.)


Materials:

8.4V Lithium Ion Batteries x2 (you may notice I have two different-looking batteries in my project. This is fine since they’re both Li-Ion, but you’ll probably get a better deal buying a two pack from the same brand.)

55T Brushed DC Motors x2

60A Brushed Electronic Speed Controllers x2

8-Channel Transmitter and Receiver System (This is what I used, but I wouldn't recommend it--see " Step 3: Coding")

Arduino Uno

Small Breadboard (this is a six pack, but you can just buy one)

Assorted 30 AWG Stranded Wires

Assorted DuPont Wires

DC 6V Solar Panels x2

TP4056 Solar Charging Modules x2

Rectifier Diodes x4

6mm x 150mm Metal Rod

Electrical connectors as necessary


WARNING: Lithium-Ion Batteries are much less stable than your regular AA batteries. Don’t let them discharge below 6V (or 3V if they’re single-cell) or charge above 8.4V (4.2V for single-cell), as this could cause permanent damage to their internal chemistry. Proper storage is also necessary to protect from fire or combustion—I store my batteries in a fireproof steel box when not in use. Finally, NEVER charge your batteries unattended! This isn’t meant to scare you, as these batteries can be tons of fun—as long as you make sure to use them correctly and safely.

3D Design

rover v60.png
rover v61.png
rover v63.png

I had to depart from my more architectural rendering in order to create a working model. To design the parts for this project, I first did a few google searches of similar projects and their designs before launching Fusion 360 and creating my own. I went with a very simple, functional design for this prototype, mostly to accelerate the production process. The components include the chassis bottom and top, the two pairs of wheels (one pair connects to the motors while the other slips onto the metal rods), and some spacers that go in between the wheels and the chassis to keep everything spaced out.

Modifying this design is very feasible if you are looking to create something with a bit more personality or style, as long as you retain similar dimensions and the same parameters for parts that fit together. The Fusion 360 file is linked below for anyone looking to modify it.

Downloads

Circuitry

circuitry.jpg
circuit.png

Now for a more complicated step: designing and connecting the circuitry! This process used a breadboard, all of our electronic components, and quite a few jumper wires. Above is a picture of the wiring, as well as a circuit schematic to make the connections clearer to see.

It all starts off with the solar panels. These each connect to a TP4056 charging module, which regulates the voltage to 4.2 Volts. However, we need 8.4V to charge our Li-Ion batteries, which is why these modules are connected in series to double their voltage. We connect this voltage source to both of our batteries in parallel, which I did with JST-XH connectors, along with two diodes. These diodes ensure that current doesn't flow the wrong way (from the batteries to the modules instead of the modules to the battery) and end up harming the modules. The reason we have two diodes connected in parallel is because each diode has a voltage drop of about 0.4V--connecting two in parallel halves this voltage drop to make charging more efficient.

Each battery already has its inputs and outputs connected to the solar panel chargers, but they are also connected to the ESCs. The ESCs convert this input into 12V DC for the motors, and each ESC also uses what is a called a BEC, or Battery Eliminator Circuit, to create a 6V DC power source. We can connect the 6V source from one ESC--along with two diodes in parallel to reduce the voltage to ~5.2V, which is within safe tolerances of the 5V pin--to the 5V pin of the Arduino. And of course, we connect the negative connector of that ESC to the common ground. The other ESC will be plugged in to the receiver to power it as well as being connected to ground. Lastly, the two signal pins of the ESCs, which are used to read inputs from the Arduino so they can control their motors, will be connected to PWM pins 6 and 9 of the Arduino.

The receiver has 3 output pins we will be using, pins which output the signals it's receiving from the transmitter as PWM signals. These outputs will be connected to PWM pins 3, 5, and 10 of the Arduino so they can be read. As already mentioned, the power source for this receiver will be one of our ESCs, and we will connect the receiver to the common ground as well.

The Arduino's connections have already been mentioned, except for its connection to ground. This universal connection will ensure that all signals between the Arduino, ESC, and receiver can be read and transmitted.

Coding

2024-05-29.png

It's time for the last piece of the robotics puzzle: coding! We'll of course be using the Arduino IDE for this, given that the brain of this prototype is an Arduino Uno. I go into much more detail about each line of code in the file itself (which is linked to this step), but the premise of it is simple: we read the inputs from the receiver and use them to control the motors. To do so, we must convert the receiver's pulses into PWM signals to be read by the ESCs--this is mainly done through pulseIn() commands and the map function.

There's also a bit of simple math involved, given that we must convert multiple signals (one for the overall speed, one for the turning mode, and one for the turning angle) into only one command for each ESC. This was complicated somewhat by the transmitter-receiver combo I used, because its turning was inconsistent. When you moved the turning wheel in one direction, the receiver would output a nice gradual signal, whereas the other direction went straight to full turning. Because of this limitation, I was forced to add a turning mode into the code, making it so that one must press a button to change which way the prototype turns. Aside from this hurdle, the code is pretty straightforward. If you use a better transmitter and receiver, you should be able to cut out that section of the code to make it easier to steer.

Downloads

Assembly

thumbnail_IMG_2204.jpg
thumbnail_IMG_2205.jpg

Now that everything's wired up and printed up, the assembly is quick and easy. The two motors go into their mounts in the chassis, and the pair of motor wheels are attached to their shafts on the outside. In the back, the metal rod is positioned in between the two holes and the wheels are pushed into it fully with the spacers. The solar panels are mounted on the top of the chassis (I simply used tape to so do) with their wires going through the hole into the chassis. The rest of the electronics can be crammed into the free space and the lid can be put on. That's pretty much it!

Testing!

Now we turn on the two ESC switches and the remote control, and we can begin testing our prototype! Here are videos of it in straight mode and both turning modes.

Limitations and Looking Forward

I had a lot of fun with this project, and I learned some new skills along the way. Looking back on this iteration, its largest limitation is likely the size and efficiency of the solar power system. The two solar panels output a maximum power of 1 Watt, meaning that it would take them around 12 and a half hours to charge two 1500mAh batteries. This is assuming full sunlight and no loss of energy from the solar charging module, inefficiencies which would likely increase the charging time significantly. Although it doesn’t seem feasible to create enough power to continuously run this device given the power draw from the motors, I would like to cut down this charging time in the future. Additionally, the steering of this project suffered from the inconsistent outputs of the transmitter and receiver, which made it harder to control. Although the steering mechanism was not integral to the concept of this prototype, I would still like to refine it in the future by purchasing better quality components. Other improvements I would like to add to future iterations include:

  • Artificial Intelligence-powered GPS so the prototype can autonomously navigate, leaving its theoretical human occupants free to perform their daily tasks
  • Adding treads to the wheels (Astute readers may have noticed that the wheels resembled gears. This was intentional, as I’d like to add treads that slot into this wheel design and give the prototype better capabilities on rough terrain.)
  • Adding more sensors so the prototype can automatically alert its inhabitants of environmental information and concerns.

Thank you for reading my Instructable. I hope that this project has inspired you to design and test your own creations!