Almost everybody has a PC nowdays. Its definitely a good thing with tons of features, however if you want to interact with the world around you and you are new to electronics, an Arduino board is exactly the thing you want to have. I personally was really surprised how easy it is to controll LEDs, DC engines, read data from senzors and so on. And you can easily do all of this with the Arduino boards. Originally, my intention was to learn something new, something connected with the electronics and microcontrollers, so I have ordered an Arduino starter kit with its project book and loads of electronic devices to help me with learning.
I believe that Arduino is meant as a really simple platform even for children, who have at least a basic knowledge of C/C++ (though its not needed, when doing projects from the book). Projects are well organized and kept simple. That means,that there is everything you need to know about your current project,however when you are willing to know more details, its better to use official arduino reference pages at http://arduino.cc. Furthermore,you can skip some projects if you think,that they will be boring,which is great. You can also find questions and suggestions on improving the projects,which is again great, since it helps you to learn and remember new things.
It was really funny for me to play with LEDs (Especially with the RGB LED), however even controlling the DC engine from a computer,via self-written C# programm is really funny, or at least I think so. The kit comes with lots of LEDs, resistors, capacitors, potenciometers, switches, senzors and wires.There is also a DC engine, a servo motor and a simple LCD screen in the package. You will find a use for all of those devices in some of those projects, but of course, you can realize your own Idea. The realization has basically 2 steps:
- Hardware part (Connect all pieces together and with your arduino board)
- Software part (write your Arduino code and upload it to the board)
I was using the Arduino Uno board and I can highly recommend it for everybody, but I believe that all of the other boards are awesome as well, so the choice is up to you. Alternatively,you can play with shields, those are special devices, that needs to be connected to the arduino board and provide further functionality (Ethernet,Wifi,even GSM). There are tons of great projects on youtube, all powered by some arduino board,so there is no need for me to add more. I just have to say,that if you want to communicate with your arduino,its probably better to use C# as well. My first attempts of using Java ended up me beeing really angry. I programmed the Arduino board, then GUI, but the problem came when trying to communicate with the arduino, since it needs serial connection and that is something Java is not easily capable of. A sample C# code for controlling a LED with number 3 follows:
private void button2_Click(object sender, EventArgs e)
serialPort = new SerialPort("COM5", 9600);
byte Value = new byte;
Value = 3;
serialPort.Write(Value, 0, 1);
This is a really simple code for sending just one byte over the serial port. Its however enough since I was controlling only 3 LEDs with 3 buttons … A more interesting part was controlling the DC engine with PWM (Pulse-Width-Modulation). I believe that adding a simple Servo motor,a DC engine and a bluetooth communicator would make a nice model (Bluetooth controlled car for children or whatever). I was also playing with the LCD display for a while because I didnt liked the idea of doing the LCD project from the book. This was the result:
Now you think something like ,,Oh retard,stop reading this” … but the truth is, that I am really her fan and what is more important – Writing your code when thinking about something beautiful really helps. So My suggestion is to learn the basics and then realize your own Ideas :) By the way,the project book is not available for free,but If you want to see just what it is about,you can search via google or visit this link. Alternatively,just search “arduino projects pdf” and I am 100% sure you will find something useful :)