DIY Cable Cam for GoPro | DIY Gadget for shooting movies
HTML-код
- Опубликовано: 23 авг 2024
- Cable Cam, also know with others name Wire Cam, Cablecam or Cable-Cam, is a device that we can attach our camera on it and control with remote/smartphone. The CableCam run on a cable (or a pair/three cable in parallel) to help us have a beautiful video shot with movement effect.
In this video, I show you how to make a Cable Cam at home from old DVD/CD Drive and Arduino Nano. It only cost 5$.
Components:
- 2x DVD/CD ROM Drive for PC
- Arduino Nano
- Bluetooth Module HC-05
- L298N Module
- 2x 3.7v Lipo battery
App: play.google.co...
Thank for watching,
The H Lab.
GENIUS BRO !!!!!
HOW MANY TYPE OF MOTOR CAN WE USE TO MAKE IT MORE POWERFULL
where we can get the code
excellent
What is the size of the two resistors?
I think 2k and 1k
#include
#include
SoftwareSerial BTserial(4, 5); // RX | TX
#define EN1 2 // PWM control speed motor 1, should be changed to 6 for PWM (also need update for schematic)
#define EN2 3
// PWM control speed motor 2
#define IN1 12
#define IN2 11
#define IN3 10
#define IN4 9
char command;
String string;
String aCmd;
int speeds = 0;
int oldSpeeds = 0;
int gear = 0;
void carGo(int direct, int speeds){
//Serial.println(speeds);
if( direct == 1 ){
digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);
} else {
digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);
}
// slowly increase/decrease speed to avoid camera shake
int spead = abs(speeds - oldSpeeds);
int ngt = 1;
if( oldSpeeds > speeds ) ngt = -1;
int ispead = 0;
int iloop = 2;
while( ispead < spead ){
ispead += iloop;
if( ispead > spead ) ispead = spead;
int vspead = oldSpeeds + ngt * ispead;
if( vspead < 50 ){
if( ngt > 0 ){
continue;// ignore this step if increasing speed
} else {
vspead = 0; // set speed to 0 and ...
ispead = 1000; // force quite loop
}
}
iloop += 2;
int tempSpeeds = map(vspead, 0, 100, 0, 255);
analogWrite(EN1, tempSpeeds );
analogWrite(EN2, tempSpeeds );
delay(200);
}
oldSpeeds = speeds;
delay(10);
}
void setup()
{
//Serial.begin( 9600 );//115200
BTserial.begin( 38400 );
pinMode(IN1, OUTPUT);
pinMode(IN2, OUTPUT);
pinMode(IN3, OUTPUT);
pinMode(IN4, OUTPUT);
pinMode(EN1, OUTPUT);
pinMode(EN2, OUTPUT);
//Serial.println("Setup done!");
}
void loop()
{
string = "";
while(BTserial.available() > 0)
{
command = ((byte)BTserial.read());
if(command == ':')
{
break;
}
else
{
string += command;
}
delay(1);
}
while( string.length() >= 3 ){
aCmd = string.substring(0, 3);
string = string.substring(3);
//Serial.println(" " + aCmd);
if ( aCmd.lastIndexOf("S") == 0 ){
speeds = aCmd.substring(1).toInt();
if( gear == 3 ){
// toward
carGo(1, speeds);
} else if( gear == 1 ){
// backward
carGo(0, speeds);
}
} else if ( aCmd.lastIndexOf("G") == 0 ){
gear = aCmd.substring(1).toInt();
}
}
}
Can we use just ESP12 MINI V2 and L298N?
@@drakulla19 This design and App for Bluetooth module, ESP12 Mini i think only have WiFi
@@TheHLab I will try with raspberrypi zero (wifi+Bluetooth) + l298n :D