Archives for 

source code

SG90 Tower Pro Servo Datasheet

servo-for-arduino-sg90-tower-pro

servo-for-arduino-sg90-tower-pro

One type of electric motor is a servo. Servo motor is used to make mechanical robotic or automated devices. Servo work based on the frequency signal from the controller (such as a microcontroller or arduino). Tower Pro SG90 servo motor can also be controlled by a ruspberry pi. You can plug this SG90 Tower Pro Servo straight onto the raspberry pi GPIO pins 4,6,8 without some extra wires. Pin 8 on the raspberry pi is normally the UART Tx pin, so your SG90 Tower Pro servo will not work properly if you connect it without disabling the UART before running the main program, You can search the instructions for how to disabling the UART on pin 8 from google.

sg90 tower pro servo cable pin

sg90 tower pro servo cable pin

Each servo motor cables have different pin configurations. Tower Pro SG90 servo has a three-pin cable. Red cable is wired VCC. Black/brown cable is a ground cable. While the orange cable is a signal cable.

You can find the SG90 Tower Pro servo tutorial and arduino uno source code here.

Source Code for Arduino Servo Control

tower-pro-sg90-servo-and-arduino-uno-wiring-cable-tutorial

tower-pro-sg90-servo-and-arduino-uno-wiring-cable-tutorial

Servo is one type of motor controlled by a frequency signal. However, some types of servo have different ways to control it. Because each type of servo have different degrees of movement.

For example, I use a servo Tower Pro SG90 and controlled using the Arduino UNO. Servo Tower Pro SG90 this has the following specifications (or you can read here for more details):

Tiny and lightweight with high output power. Servo can rotate approximately 180 degrees (90 in each direction), and works just like the standard kinds but smaller. You can use any servo code, hardware or library to control these servos. Good for beginners who want to make stuff move without building a motor controller with feedback & gear box, especially since it will fit in small places. It comes with a 3 horns (arms) and hardware.

Tower Pro SG90 Specifications :
Weight: 9 g
Dimension: 22.2 x 11.8 x 31 mm approx.
Stall torque: 1.8 kgf·cm
Operating speed: 0.1 s/60 degree
Operating voltage: 4.8 V (~5V)
Dead band width: 10 μs
Temperature range: 0 °C – 55 °C

 

Tower Pro SG90 Servo characteristic : Position “0” (1.5 ms pulse) is middle, “90” (~2 ms pulse) is all the way to the right, “-90” (~1ms pulse) is all the way to the left.

This is the Arduino Source Code for the Sweep Mode Servo :

#include <Servo.h>

Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created

int pos = 0; // variable to store the servo position

void setup()
{
myservo.attach(2); // attaches the servo on pin 2 to the servo object
}

void loop()
{
for(pos = 0; pos < 180; pos += 1) // goes from 0 degrees to 180 degrees
{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable ‘pos’
delay(15); // waits 15ms for the servo to reach the position
}
for(pos = 180; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position in variable ‘pos’
delay(15); // waits 15ms for the servo to reach the position
}
}

Arduino Nano Datasheet and Tutorial

arduino-nano-configuration

arduino-nano-configuration

Arduino Nano is a function module which is very small but has a lot of advantages. The shape is very small so it is suitable to make a project that looks small. Arduino Nano is very special because of this support with breadboards. You can plug arduino and other electronic components in one breadborad. In the Arduino Nano 2.x version, still used avr ATmega168 microcontroller while the Arduino Nano 3.x version already used avr ATmega328 microcontroller.

arduino nano tutorial

arduino nano tutorial

Arduino Nano has features and functions similar to arduino Duemilanove. But Arduino Nano in different packaging. Arduino nano does not have a DC jack so that its power supplied through mini-B USB port or directly connect to the VCC pin and GND. Arduino Nano can be supplied with a voltage of 6-20V power source via USB mini-B port. Or you can provide a voltage of 5V on pin 30 (this voltage will not be adjusted by the regulator, so make sure you provide 5V voltage)

arduino nano pin configuration

arduino nano pin configuration

Arduino Nano Specifications:

MicrocontrollerAtmel ATmega168 or ATmega328
Operating Voltage (logic level)5 V
Input Voltage (recommended)7-12 V
Input Voltage (limits)6-20 V
Digital I/O Pins14 (of which 6 provide PWM output)
Analog Input Pins8
DC Current per I/O Pin40 mA
Flash Memory16 KB (ATmega168) or 32 KB (ATmega328) of which 2 KB used by bootloader
SRAM1 KB (ATmega168) or 2 KB (ATmega328)
EEPROM512 bytes (ATmega168) or 1 KB (ATmega328)
Clock Speed16 MHz
Dimensions0.73″ x 1.70″
Length45 mm
Width18 mm
Weigth5 g

 

 

arduino nano datasheet

arduino nano datasheet

In some cases, Arduino Nano has features that are more complete than arduino uno. Arduino Nano has 8 channel ADC (Analog to Digital Converter) while the Arduino Uno only has 6 channels. Through the RX and TX pins you can communicate serially with other devices. According datasheet ATmega328 AVR microcontroller, Arduino Nano has 2 pin interrupt, namely int0 and int1.

arduino nano pin input output configuration

arduino nano pin input output configuration

Overall, Arduino nano has 30 pins. The 8 pin of them (19-26 pin) are Analog pins (ADC). While the other 14 pins are Digital pins (Please see the picture above to see the position of digital and analog pins).

arduino nano connected to computer

arduino nano connected to computer

You have to write the source code for arduino nano on Arduino IDE sofftware. Then, you can download the program on an Arduino Nano using a USB-B cable.