अपने computer के mouse से servo motor को graphical user interface create कर के control करना
Friends में एक simple सा project जिसे Servo motor को computer mouse से control करने के लिए में ये post लिख रहा हूँ इसमें भी मेने Arduino uno का use किया है Arduino uno की pwm pin 11 से एक servo motor को connect करके मेने उस servo motor को अपने computer के mouse से control कर 30°,60°,90°,120° के angle से rotate करवाया में कुछ दिनों से graphical user interface(GUI) का मज़ा ले रहा हूँ इस post में भी मेने GU Interface का use किया है अपनी servo motor को mouse से control करने के लिए
(adsbygoogle = window.adsbygoogle || []).push({});
मेने mouse से servo motor को control करने के लिए मैंने पहले mouse को समझा और बहुत सारे program बनाये gui create करने के लिए problem ये थी की मेरे programs servo को तो control कर रहे थे पर मेरी gui window पर कोई result show नहीं हो रहा था इस लिए मेने सिर्फ इस हिसाब से मेने processing gui window में चार coordinates create किये पहला x-axis पर 100 के अंदर दूसरा भी x-axis पर 200 के अंदर एसे ही 300,400 के लिए इनका मतलब है की यदि में mouse के cursor को program से create हुई window में X-100 के अंदर रखेंगे तो first condition true होते ही servo 30° पर पहुँच जाएगी जैसे ही mouse cursor 100 के आगे 200 के बीच होगा तो servo 60° पर पहुँच जाएगी इसी प्रकार mouse का cursor 200 और 300 के बीच पहुंचेगा तो 90° और mouse cursor 300 और 400 के बीच ले जायेंगे तो servo की position 120° होगी
Arduino Arduino Arduino Arduino Arduino Arduino Arduino Arduino Arduino Arduino Arduino Arduino Arduino Arduino
Material-Software&Hardware-
- Arduino uno
- Computer with IDE
- 1xservo
- Arduino software
- Processing software(GUI create करने के लिए)
Servo motor Control-
mouse को processing से बनी gui window पर x-axis पर right-left करने पर servo के position बदलेगी gui window में mouse cursor को X-100 के अंदर रखेंगे तो first condition true होते ही servo 30° पर पहुँच जाएगी जैसे ही mouse cursor 100 के आगे 200 के बीच होगा तो servo 60° पर पहुँच जाएगी इसी प्रकार mouse का cursor 200 और 300 के बीच पहुंचेगा तो 90° और mouse cursor 300 और 400 के बीच ले जायेंगे तो servo की position 120° होगी
(adsbygoogle = window.adsbygoogle || []).push({});
Circuit-Servo को हमेशा pwm pin के साथ ही connect करें
- servo motor की yallow pin को arduino uno की pwm pin 11 से connect करें
- servo motor की red pin Arduino uno की 5v pin से connect करें
- servo motor की black या brown pin को Arduino uno की Gnd pin से connect करें
Arduino&Processing GUI programming (Gui servo control)
arduino की programming पहले है जिसे अपने arduino में upload करें और इसके नीचे Mouse Gui create करने के लिए processing का program दिया है
Arduino Programming-
/*created by mechanic37
servo control-GUI
www.mechanic37.com
attach servo to pwm pin 11 */
#include<Servo.h>
Servo m1servo;
void setup()
{
Serial.begin(9600); // Initialize Serial Communitication
m1servo.attach(11);
}
void loop()
{
if (Serial.available() > 0) { int data = Serial.read();
switch (data) {
case ‘1’: //Number 1 is received
m1servo.write(30);
break;
case ‘2’ : //Number 2 is received,
m1servo.write(60);
break;
case ‘3’ : //Number 3 is received,
m1servo.write(90);
break;
case ‘4’ : //Number 4 is received,
m1servo.write(120);
break;
default :
break; } } }
processing GUI Programming-
Mouse के लिए GU Interface create करने के लिए processing में इस code को paste करें और play icon पर click करें तो ऐसीं gui window create होंगी
*created by mechanic37
servo control-GUI
www.mechanic37.com
*/
import processing.serial.*;
Serial port;
int r,g,b;
void setup() {
size(400,150);
r = 0;
g = 0;
b = 0;
frameRate(10);
port = new Serial(this, 9600);
int a,b;
}
void draw() {
stroke(0);
rect(0,0,300,100);
background(#FFFFFF);
if (mouseX < 100) {
fill(#8DD652);
rect(0,0,100,100);
port.write(‘1’);
}
else if(mouseX < 200) {
fill(#8DD652);
rect(100,0,100,100);
port.write(‘2’);
}
else if(mouseX <300 ){
fill(#8DD652);
rect(200,0,100,100);
port.write(‘3’);
}
else if(mouseX <400){
fill(#8DD652);
rect(300,0,100,100);
port.write(‘4’);
}
rect(80,100,200,60);
textSize(25);
fill(#26460D);
text(“30°”,30,60);
text(“60°”,130,60);
text(“90°”,230,60);
text(“120°”,330,60);
text(“Mechaic37GUI”,100,140);
}
Leave a Reply