WeatherPlotter(Useless)

by eeg22 in Circuits > Arduino

198 Views, 1 Favorites, 0 Comments

WeatherPlotter(Useless)

1930355.jpg
1930339.jpg
1930367.jpg

You want to know if you should go out to fly your drone? Then just try this out!

THE WEATHER PLOTTER!


The project was conducted as part of the Computational Design and Digital Fabrication seminar in the ITECH masters program. https://icd.uni-stuttgart.de

Project by Michael Gosk and Hyowook Kim

Supplies

Screenshot 2021-06-17 221931.png
Screenshot 2021-06-17 222001.png

In this step image you can see the electronic parts, with which we will start:

As this will be a double (team) device that is based on a communication from one part to another remotely (!We still do not believe that it worked - Science sometimes is like magic!) we will need 2 electronic "brains" that will communicate - namely Arduino Uno circuits (but you can use whatever 5V logic Arduino you have - also Nano version - just be sure when we use 3v3 and when 5V). They do not need to be big and robust, just simple, basic versions that you can power remotely without the usage of a computer (respective batteries and battery cases will be also needed).
Since we touched batteries (do not lick them!) - for one of Arduinos we will use bulky 9v battery and connecting wires, for the second basket for 4xAA batteries (of course with batteries) - but actually you can use 2x the first solution if it seems easier for you.
As we have mentioned remote communication - we need something that will enable those boards/brains/microcontrollers (Arduinos) to actively exchange information (although in this case, it will be only a one-way communication) and knowing that most of them do not have any antennas or data exchange platforms provided onboard we need other elements - To this task we will use 2x nRF24 radio communication little components (however, it is better to have some more like ~5 pieces as they can be a little bit sassy and sometimes they does not work - be aware of that fact!)

Time for sensors that will analyze our environment and provide us some (useless) data.
First of all - king of all the sensors - simple and popular photoresistor.
Next to it we will place advanced yet still popular and available accelerometer MPU6050 - if you do not have or do not want to use a soldering iron, try to buy/find already preassembled one that has "legs" already placed and secured. Those two are all. We told you it's simple!

Now on the side of the actuators - we will use also two, really well known and popular basic components:
- small DC motor (it can be any found in a disassembled toy or other machines - preferably 5 V (or 3-6 V) - just remember rather not to use the ones that need big voltage as our system is 9V max only! - you can do it, but then you need to figure it out yourself.)
- small servo (simple model making "9g servo" that is super popular and attached to many starting kits should be totally enough - we have told you we do not need anything special, haven't we?)
[To make motor directly useful we bought ourselves the motor that was supplied with some gears and double-sided shaft (not needed), supplied also with standard robot building wheel -


More nitty-gritty technical parts:
1x 10k Ohm resistor
1x MOS Transistor
1x simple diode (not lighting one, just the simplest one that allows current go only one way)
2x breadboard (does not need to be the long one but might be easier to use - you can of course soldier things together or have them on a smaller prototyping board if you want to, we stayed at this non-professional level of tinkering)
And of course not provided in the images Jumper Wires - it would be the best to have at least 2 sets (one set is 20pcs) of male-male and male-female color wires to be able to set your own color code or follow our provided one and not get lost in "what goes where" questions.

Besides electronic stuff, we will also use standard A4 printing paper, normal gluing tape, rubber band (a bunch of them would be ideal), and a thick pen or marker that will not be afraid of some running through the paper without being too much pushed from the top (unfortunately, normal roller pen probably will not do). Some small standard IKEA hex key as a handle to the servo. That is the rolling and marking part, and what about the box and the mounting? Here, in spite of quite a complicated situation (2020/2021), we tried to be very creative and used one of the empty cardboard boxes -
Now, the most important part - rollers - instead of nice professional bearings we decided to use cheap lint rollers - but here is a warning - we can only use the one with a handle being placed sideways. We need three of them (three handles, not exactly the sticky part), as the fourth roller will be the previously mentioned wheel with the engine.

1. Cardboard box: the body of the plotter x 1 (big enough for A4 paper)

2. Small box for transmitter x 1 (big enough for breadboard)

3. Small box for the receiver x 1 (big enough for breadboard)

4. Two paper plates for the MPU6050 and photoresistor x 1

5. Steel wire x 1

6. Steel wire connector x 2

7. Steel bolt x 1

8. Steel nut x 2

9. Steel flange x 2

10. Pen x 1

11. Hexagon wrench x 1

Radio

Screenshot 2021-06-18 000017.png
IMG_20210618_132038.jpg
IMG_20210618_132352.jpg
IMG_20210618_132056.jpg
IMG_20210618_132229.jpg
IMG_20210618_132355.jpg

We are not experts on radio devices but we can direct you to some people who are:
https://howtomechatronics.com/tutorials/arduino/ar...

Following their lead, we provide simple instructions on how to wire radio elements to Arduino (follow this step for each of your two Arduinos!) Radio is a little bit more complicated than the other stuff we are describing, as it needs as much as 7 wires and - that's a warning! - should be powered on with 3.3 V only - so do not put the VCC pin of the radio to the 5V as you may burn it and then it will not work for “I don't know why” reason. (It is best to throw away those burned ones and not to keep them with functioning ones) The good news is that the data pins tolerate the 5V logic so we do not need to use a logic level converter. (Probably, it would be still advisable but this is a super simple tutorial)

Take the Radio component to your hand and keep it with its electronic stuff facing your side (golden zig-zag - antenna up), and its legs down. Counting from left: First column - red and brown: Red is conventional “+” - this time going directly to 3.3V on the Arduino (as we do not have any other device using this pin we can do it like this. Brown will be our ground and should go to the general common ground we will be using further on - so it is best to connect it to the “-” on a breadboard and “-” from breadboard with additional wire to GRD of the Arduino - this way we extend ground pins for further usage (in our photos we are using the Arduino GND for the sake of photo clarity) Second column: blue and violet - pins 8 and 7 respectively Last two columns: a batch of yellows in the schematics but shades of grey in our photos (not too professional from our side as usually those colors represent GND wires - probably you should use any signal colors not to disconnect them. Describing the geometrical order: Still counting from left - third column - top to pin 11 bottom to pin 13. Fourth column - bottom to pin 12. The last pin stays unoccupied. (It took a while to wire it up correctly for the first time, so do not be surprised if it does not work as it is tricky!)

Programming of this will be included in respective steps for Transmitter and Receiver.

Transmitter

WhatsApp Image 2021-06-18 at 00.02.45.jpeg

First, we are going to wire up the simple transmitter setup.
As for now both of your Arduinos should have a radio set up - take one of them, and let's add some sensors! First of all - photoresistor - this is not too complicated - but we should use a breadboard or any other prototyping plate. One of the legs should be directly wired to the 5V of Arduino or a + on a breadboard. (connected to the 5V on the Arduino). The other one should be connected to a 10k Ohm resistor and A0 pin on Arduino, the second leg of the resistor should be connected to the ground (GND on Arduino or “-” on a breadboard connected to the GND on Arduino).

More on that subject (basic reference we have used): https://create.arduino.cc/projecthub/Ayeon0122/re...

Secondly, we have got a more complicated task - wiring up the MPU6050 accelerometer. To use it we will need 4 wires. Let’s start with the obvious ones - VCC should be connected with + or 5V, GND with GND (similarly as in a previous case). Now those are more complicated: SDL and SDA - if you want to follow our idea of violet and orange but can be anything that shows that these are signal wires - those go to A5 and A4 pins at the Arduino (respectively). We should be ready to code!

Code for transmitter:

One more time we are not experts in that manner but there are some marvelous examples over the internet - we decided to follow up on this link https://howtomechatronics.com/projects/diy-arduin... and based on that amazing tutorial that allows you to build even remote steering for a small plane we come up with our much more simplified code that we show you here.

What is important is to keep the same connection credentials both here and in the second part, we are heading in the Receiver step.

Downloads

Reciver

Screenshot 2021-06-18 000100.png

This wire up is a little bit heavier, because of the DC motor usage - as a warning, we would like to say that with those - even though they are tiny - we need to be at least a little bit cautious as they can burn down your Arduino board. This is why we followed up the lead of our tutors and some remarks from the internet and decided to do the wiring as follows:
(You should start here with the second Arduino having a radio attached from step nr 3 - Radio)

Let’s start with an easy part - servomotor. We need only 3 wires, and colors of wires coming out of the servo are telling us what to do - the red one - is +5V (rather breadboard “+” connected to the Arduino +5V because of the number of things that will try to occupy this pin), brown is ground (“-” on a breadboard or GND as usual - rather the first option) and the last one - orange - providing steering signal - directly to the pin 9 of the Arduino that should be marked also with ~ sign- meaning it is a PWM pin.

Now the harder part: DC motor. Basically, it takes only 2 wires to plug it in - “+” and “-” and depending on their positions the motor will be moving right or left. The obstacle is we cannot plug it directly into the Arduino (risk of burning it!) and we want to have at least some control of the voltage it receives and therefore rotation of our DC motor. For that we will use MOSFET Transistor that allows us to perform such an operation - we do not want to go into details as we are not experts on that field either - let’s just follow up the lead of this https://www.tutorialspoint.com/arduino/arduino_dc...tutorial and wire it like in the image provided by us.

This wiring will use a breadboard. First, put the MOSFET transistor facing us with its front (its “stomach” should be facing us) with three legs to the three rows of breadboard. Now the Left leg with a jumper wire to PWM Pin nr 3; Middle leg - one wire to the motor Ground, second by flyback diode (check directionality! - the white stripe on the diode!) to another empty row in the breadboard. Now from this new row 2 wires - red to the +5 or + on a breadboard (connected to the +5 on the Arduino) second one is the other wire of the DC motor - in our case, it's yellow (why is it yellow?) but could also be red. Red in fact would be much cooler! Finally the last, right leg - directly to the GND or minus on the breadboard (connected to the GND - as always the second option is more advisable). That's it - Time to code!

Receiver - coding

One more time we are not experts in that manner but there are some marvelous examples over the internet - we decided to follow up this link: https://howtomechatronics.com/projects/diy-arduin...and basing on this super detailed and interesting thing we come up with our code.

What is important is to keep the same connection credentials both here and in the second part, we are heading to the next steps!

Downloads

Communication Setup

Screenshot 2021-06-18 000116.png
Screenshot 2021-06-17 221903.png

The best would be if you have both Arduino with their systems plugged to one (that would be ideal) or two computers (easier to perform if you have two computers available) with both serial monitor switched on on both arduinos working (it is possible, you just cannot open a new script from the Arduino IDE but open another instance of the IDE directly from the icon - this wonderful tips we found in this tutorial https://www.youtube.com/watch?v=JSHJ-RLbNJk (Chapeau bas! for Ralph S Bacon) and pay attention especially to the receiver part - it should receive some data packages and of course respectively rotate servo or spin of the DC motor - if you see a clear connection between accelerometer rotation and (Transmitter) and Servo operation (Receiver) we are good to go!

Physical Build Up - Transmitter

1930392.jpg
1930309.jpg
1930385.jpg

Find a box that you can put the transmitter Arduino in. The important thing is that you should make a small hole before you put the Arduino inside the box. Because we need to pull out the wires of the MPU6050 and the photoresistor so that they can actually hang out of the box.

Cut a steel wire(or any wire or cable). The steel wire should not be longer than your wires which are connected from the Arduino to the MPU6050 and the Photoresistor. ( steel wire length < Arduino to mpu6050 length ) This will avoid the tension of the electrical wire. Then connect each side to the steel wire connector.

So now you have a box with a hole and the wires. Let’s make the part for the MPU6050 and the photoresistor. Grab two cardboards and cut them in the same dimension. The size doesn’t really matter but it should be big enough that it gets enough wind for the reaction. After that make a rectangular hole and put a plastic layer inside of it that you can see the module inside of. At last glue them together but one side shouldn’t be glued because we need to put the MPU6050 and the photoresistor inside of it like in the picture.

So let’s try to put the Arduino inside of the box and put the wires for the MPU6050 and photoresistor out. And then connect the box and the cardboard with the steel wire and put the MPU6050 and the photoresistor inside the cardboard. That’s it!

Let’s move to the Receiver plotter part.

Physical Build Up - Receiver

1930356.jpg
1930305.jpg
1930386.jpg

Find two boxes. One should be big enough that you can use a paper-like A4 for the plotter. The width of the box should be at least bigger than the two lint rollers that you are going to use. So make sure that your box is big enough for that. The second box doesn’t need to be big but big enough for the breadboard and the Arduino.

So for the plotter, you have to make three holes for the lint rollers and one small hole for the DC motor. Try to make 2 small holes on each side where you want to have the rollers at the same height that they are parallel. And put the rollers from inside to the outside that the handle of the lint roller is facing out. If you have done the lint rollers you are having two lint rollers that are facing each other and one in alone. We are going to connect the two lint rollers with the paper roll. This part is the most difficult part because the paper roll might be too long and you have to squeeze a little bit. So be careful and try to fit the paper roll to the two lint rollers.

After that, you need to connect the lint roller, paper roll, and DC motor for the movement of the paper. You will face some problems if you use only the normal DC motor part. So try to change the gear direction inside the DC motor part so that one axis is longer in one direction. Try to make the hole for the DC motor bigger than the axis so that it doesn’t get any friction. Fix the DC motor on the box with the steel bolts. Connect the long axis with the Arduino wheel. And try to connect the Arduino wheel and the lint roller and that’s it for the mechanism! At the end attach some double-sided tape on the paper rolls that is a little bit sticky.

Now to the second box for the Arduino and the pen location. Try to fix the pen for the plotter to fix with the servo motor. We fixed it with some rubber and a hexagon wrench which is working properly so you can try the same thing or a better way. Try to find the best height for the pen and the servo motor. At the end just put the Arduino and the breadboard inside the box and try to fix or glue the small and big boxes together.

Result

Weather plotter_Explanation
1930351.jpg
1930358.jpg
1930364.jpg

Finally, you can start your weather plotter!

Firstly turn on your Transmitter and hang it near to the window and then turn on the receiver it will automatically start the drawings! Try to read the waves and find out when is the point that the wind is blowing very fast and when the sunshine is very bright!

So have fun!

by Michael Gosk and Hyowook Kim

References