Introduction: Bluetooth Joystick Pan/Tilt Controller
By Jay Amiel Ajoc
Gensan PH
Good day! This'll help you build your own pan & tilt platform controlled from a smartphone via Bluetooth.
What you'll need:
Hardware
1. Arduino Uno
2. HC-05 Bluetooth Module
3. 2 Servo Motors (SG-5010) or any servo
4. Aluminum Sheets
5. Epoxy or Bolts & Nuts
6. 5V power source (powerbank)
7. Camera (optional)
8. Boost converter (optional, to power the camera)
Software
1. Arduino IDE
2. SketchUp (if you intend to 3D print the platform)
3. MIT App Inventor
Step 1: Building the Pan & Tilt Platform
For the pan & tilt platform, head over to this site and download the SketchUp file:
https://grabcad.com/library/pan-tilt-mechanism
OR
You may trace the patterns above onto an aluminum sheet.
Make the necessary cuts/holes.
You may need a bit of force to bend the sheets to the desired angle.
After that, glue the servo motors in place using epoxy.
Or you may use bolts & nuts to make it look neater.
Step 2: Developing the Android APP Using App Inventor 2
For the android app, I have a step-by-step video about it on YouTube.
STEP-BY-STEP VIDEO CLICK HERE.
OR
You may just download this:
JOYSTICK APK
Step 3: Uploading the Arduino Code
Plug in your Arduino board and upload this code.
#include <Servo.h>
Servo panServo, tiltServo;
void setup() {
panServo.attach(9);
tiltServo.attach(6);
Serial.begin(38400); }
void loop() {
if(Serial.available()>= 2 ) {
unsigned int servopos = Serial.read();
unsigned int servopos1 = Serial.read();
unsigned int realservo = (servopos1 *256) + servopos;
Serial.println (realservo);
if (realservo >= 550 && realservo <750){
int servo1 = realservo;
servo1 = map(servo1,550,750,10,170);
panServo.write(servo1);
Serial.println(servo1);
delay(10);
}
if (realservo >= 250 && realservo <450){
int servo2 = realservo;
servo2 = map(servo2,250,450,170,10);
tiltServo.write(servo2);
Serial.println(servo2);
delay(10);
}
}
}