Pour la raspberry tu trouvera des shield d'adaptation arduino et après t'achète le shield contrôle des moteurs puis go pour l'observation.
Meteor64.
Il y a 55 élément(s) pour meteor64 (recherche limitée depuis 04-mai 13)
Posté par meteor64 sur 03 décembre 2014 - 09:59 dans Bras robots, pinces, tourelles, et autres manipulateurs
Pour la raspberry tu trouvera des shield d'adaptation arduino et après t'achète le shield contrôle des moteurs puis go pour l'observation.
Meteor64.
Posté par meteor64 sur 03 décembre 2014 - 09:51 dans Bras robots, pinces, tourelles, et autres manipulateurs
OK ceci m'explique l'utilisation de reducteur, j'aimerai te demander si l'idée de la raspberry t'intéresse ou aprés tu as l'arduino encore plus facile à mettre en oeuvre avec le wifi ou le bluetooth.
Meteor64.
Posté par meteor64 sur 03 décembre 2014 - 09:33 dans Bras robots, pinces, tourelles, et autres manipulateurs
Etant donné que je suis moi même astronome amateur, je pense que tu veut faire un GOTO et en plus un suivi équatorial, je me trompe ?
donc je pense que pour faire un tel projet il te faudrait une précision extrême si je puis dire donc je pensait à un moteur pas-à-pas, mais bon la c'est des contrôleurs donc la mise en oeuvre est un peut plus simple mais au niveau du contrôle en Web Server il va te falloir un peut de connaissance mais bon tu peut utiliser des modules HF avec une raspberry pi, la c'est un peut plus simple, après je te propose le bluetooth, en plus avec la raspberry (tu doit le savoir qu'il existe des webcams pour les télescopes)tu peut utiliser ce type de caméras avec son port usb Hôte et rester au chaud tout en observant, mais au niveau du contrôle en plus de la transmission d'images je te conseille le Wifi.
J'espère t'avoir bien aider, et si l'idée des moteurs pas-à-pas te plait, j'espère que les autres robot-maker seront t'apporter plus de conseil.
Cordialement, Meteor64.
Posté par meteor64 sur 01 décembre 2014 - 09:35 dans Bras robots, pinces, tourelles, et autres manipulateurs
#include <Servo.h> #include <PS2X_lib.h> #define SOUND_PIN 5 // Botboarduino JR pin number #define PS2_DAT 6 #define PS2_CMD 7 #define PS2_SEL 8 #define PS2_CLK 9 PS2X ps2x; int error = 0; byte type = 0; #define Deadzone 10 char ArmSize = 'D'; // Must be 'A', 'B', or 'D' DO NOT REMOVE THE SEMICOLON OR THE ' ' float A; float B; float rtod = 57.295779; float Speed = 1.0; int sps = 3; Servo Elb; Servo Shldr; Servo Wrist; Servo Base; Servo WristR; Servo Gripper; float X = 4; float Y = 4; int Z = 90; int G = 90; int WR = 90; float WA = 0; float tmpx = 4; float tmpy = 4; int tmpz = 90; int tmpg = 90; int tmpwr = 90; float tmpwa = 0; void setup() { Serial.begin(57600); error = ps2x.config_gamepad(PS2_CLK, PS2_CMD, PS2_SEL, PS2_DAT); // Setup gamepad (clock, command, attention, data) pins if(error == 0) Serial.println("Found Controller, configured successful"); else if(error == 1) Serial.println("No controller found"); else if(error == 2) Serial.println("not accepting commands"); else if(error == 3) Serial.println("refusing Pressures mode"); type = ps2x.readType(); switch(type) { case 0: Serial.println("Unknown"); break; case 1: Serial.println("DualShock"); break; case 2: Serial.println("GuitarHero"); break; } Base.attach(2); Shldr.attach(3); Elb.attach(4); Wrist.attach(10); Gripper.attach(11); WristR.attach(12); switch(ArmSize) { case 'A': A = 3.75; B = 4.25; break; case 'B': A = 4.75; B = 5.00; break; case 'D': A = 5.75; B = 7.375; break; } } int Arm(float x, float y, float z, int g, float wa, int wr) //Here's all the Inverse Kinematics to control the arm { float M = sqrt((y*y)+(x*x)); if(M <= 0) return 1; float A1 = atan(y/x); float A2 = acos((A*A-B*B+M*M)/((A*2)*M)); float Elbow = acos((A*A+B*B-M*M)/((A*2)*B)); float Shoulder = A1 + A2; Elbow = Elbow * rtod; Shoulder = Shoulder * rtod; while((int)Elbow <= 0 || (int)Shoulder <= 0) return 1; float Wris = abs(wa - Elbow - Shoulder) - 90; Elb.write(180 - Elbow); Shldr.write(Shoulder); Wrist.write(180 - Wris); Base.write(z); WristR.write(wr); Gripper.write(g); Y = tmpy; X = tmpx; Z = tmpz; WA = tmpwa; G = tmpg; WR = tmpwr; return 0; } void loop() { ps2x.read_gamepad(); //update the ps2 controller int LSY = 128 - ps2x.Analog(PSS_LY); int LSX = ps2x.Analog(PSS_LX) - 128; int RSY = 128 - ps2x.Analog(PSS_RY); int RSX = ps2x.Analog(PSS_RX) - 128; if(RSY > Deadzone || RSY < -Deadzone) tmpy = Y + RSY/1000.0*Speed; if(tmpy < -1) tmpy = -1; if(RSX > Deadzone || RSX < -Deadzone) tmpx = X + RSX/1000.0*Speed; if(tmpx < -0.5) tmpx = -0.5; if(LSY > Deadzone || LSY < -Deadzone) tmpwa = WA + LSY/100.0*Speed; if(tmpwa > 180) tmpwa = 180; else if(tmpwa < 0) tmpwa = 0; if(LSX > Deadzone || LSX < -Deadzone) tmpz = Z + LSX/100.0*Speed; if(tmpz > 180) tmpz = 180; else if(tmpz < 0) tmpz = 0; if(ps2x.Button(PSB_R1)) tmpg = G + 5*Speed; if(ps2x.Button(PSB_R2)) tmpg = G - 5*Speed; if(tmpg > 180) tmpg = 180; else if(tmpg < 50) tmpg = 50; if(ps2x.Button(PSB_L1)) tmpwr = WR + 2*Speed; else if(ps2x.Button(PSB_L2)) tmpwr = WR - 2*Speed; if(tmpwr > 180) tmpwr = 180; if(tmpwr < 0) tmpwr = 0; if(ps2x.ButtonPressed(PSB_PAD_UP)) { sps = sps + 1; if(sps > 5) sps = 5; tone(5, sps*500, 200); } else if(ps2x.ButtonPressed(PSB_PAD_DOWN)) { sps = sps - 1; if(sps < 1) sps = 1; tone(5, sps*500, 200); } Speed = sps*0.20 + 0.60; if(Arm(tmpx, tmpy, tmpz, tmpg, tmpwa, tmpwr)) { Serial.print("ERROR"); } if(tmpx < 2 && tmpy < 2 && RSX < 0) { tmpy = tmpy + 0.05; Arm(tmpx, tmpy, tmpz, tmpg, tmpwa, tmpwr); } else if(tmpx < 1 && tmpy < 2 && RSY < 0) { tmpx = tmpx + 0.05; Arm(tmpx, tmpy, tmpz, tmpg, tmpwa, tmpwr); } delay(30); }
En vous remerciant d'avance, et je vous présenterai sous peu mon fameux robots dont je vous parle énormément et dont vous n'avez jamais vu une seule photo.
Posté par meteor64 sur 06 septembre 2014 - 09:31 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 05 septembre 2014 - 05:21 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 03 septembre 2014 - 03:03 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 26 juillet 2014 - 09:15 dans Robots roulants, chars à chenilles et autres machines sur roues
Posté par meteor64 sur 20 juillet 2014 - 09:20 dans Robots roulants, chars à chenilles et autres machines sur roues
Posté par meteor64 sur 15 juin 2014 - 05:25 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 15 juin 2014 - 05:08 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 15 juin 2014 - 03:26 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 14 juin 2014 - 07:51 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 13 juin 2014 - 09:01 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 12 juin 2014 - 08:03 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 29 mai 2014 - 08:46 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 28 mai 2014 - 10:01 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 28 mai 2014 - 10:00 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 28 mai 2014 - 08:32 dans Drone, Robot volant, et autres machines volantes
Posté par meteor64 sur 20 avril 2014 - 09:04 dans Electronique
Posté par meteor64 sur 19 avril 2014 - 08:50 dans Electronique
Posté par meteor64 sur 19 avril 2014 - 08:24 dans Robots roulants, chars à chenilles et autres machines sur roues
Posté par meteor64 sur 18 avril 2014 - 07:28 dans Robots roulants, chars à chenilles et autres machines sur roues
Posté par meteor64 sur 15 avril 2014 - 08:48 dans Robots roulants, chars à chenilles et autres machines sur roues
Posté par meteor64 sur 12 avril 2014 - 08:24 dans Electronique