Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Arduino-Roboterarm mit Custom-Controller – Servo & Potentiometer Aufbau

Komponenten und Zubehör

Arduino-Roboterarm mit Custom-Controller – Servo & Potentiometer Aufbau
Arduino UNO
× 1
Servo Motor MG995
× 1
Servo Motor DS3115
× 1
Arduino-Roboterarm mit Custom-Controller – Servo & Potentiometer Aufbau
Drehpotentiometer, 10 kΩ
× 1

Apps und Online-Dienste

Arduino-Roboterarm mit Custom-Controller – Servo & Potentiometer Aufbau
Arduino IDE

Über dieses Projekt

Ich habe einen Roboterarm und dessen Controller gebaut.

Aufbau

Der Roboterarm nutzt drei herkömmliche PWM-Servos; jeder Winkel wird durch einen Drehwiderstand (Potentiometer) gesteuert. Verwendet wurde ein B-Kennlinien-Potentiometer mit 10 kΩ.

Arduino-Roboterarm mit Custom-Controller – Servo & Potentiometer Aufbau

Roboterarm-Bau

In vertikaler Richtung kommen zwei DS3115-Servos zum Einsatz, für die Schwenkbewegung ein MG995-Servo.

Arduino-Roboterarm mit Custom-Controller – Servo & Potentiometer Aufbau

Controller-Bau

Das Controller-Gehäuse wurde im 3D-Drucker gefertigt.

Arduino-Roboterarm mit Custom-Controller – Servo & Potentiometer Aufbau

Löcher für Potentiometer-Knöpfe, Positionierbohrungen und Aussparungen für die Knöpfe sind vorgesehen.

Arduino-Roboterarm mit Custom-Controller – Servo & Potentiometer Aufbau

Gefertigte Teile und drei Drehpotentiometer zusammenbauen – fertig! Die Potentiometer sind nun in dieselbe Richtung ausgerichtet wie die Drehachse der Servomotoren des Roboterarms.

Arduino-Code

Der einfache Code liest die Potentiometer-Werte an analogen Pins ein, wandelt sie in Winkel um und gibt sie an die entsprechenden Servos weiter.

#include <Servo.h>

Servo myservo1, myservo2, myservo3;

float th1=90.0, th2=90.0, th3=90.0;
float val1, val2, val3;

void setup() {
  Serial.begin(9600);
  myservo1.attach(9, 500, 2420); // MG995
  myservo2.attach(10, 820, 2140); // DS3115
  myservo3.attach(11, 820, 2140); // DS3115
  set_servo();
}

void loop() {
  val1 = analogRead(A1);
  val2 = analogRead(A2);
  val3 = analogRead(A3);

  th1 = map(val1, 170.0, 880.0, 0.0, 180.0);
  if (th1 >= 180.0) th1 = 180.0;
  else if (th1 <= 0.0) th1 = 0.0;

  th2 = map(val2, 150.0, 860.0, 0.0, 180.0);
  if (th2 >= 180.0) th2 = 180.0;
  else if (th2 <= 0.0) th2 = 0.0;

  th3 = map(val3, 860.0, 160.0, 0.0, 180.0);
  if (th3 >= 180.0) th3 = 180.0;
  else if (th3 <= 45.0) th3 = 45.0;

  set_servo();
}

void set_servo() {
  myservo1.write(th1);
  myservo2.write(th2);
  myservo3.write(th3);
}

Inbetriebnahme

Drehpotentiometer verdrahten und mit Arduino verbinden – fertig!

Herstellungsprozess

  1. Visionsbasierter Hindernis-vermeidender Mobiler Roboter auf Raspberry Pi
  2. gatoBot: Web-gesteuerter Raspberry Pi Zero W Roboter mit Live-Videostreaming
  3. Simple Pi Robot: 2-WD Autonomer Rover mit Raspberry Pi bauen
  4. Dualarm-SCARA-Roboter: Fortschrittliche Montage- & Produktionslösungen
  5. UV-Desinfektionsroboter mit Arduino Mega: Fernsteuerbares Keimtötungssystem
  6. Unopad: Nahtloser Arduino MIDI-Controller für Ableton Live
  7. MeArm Roboterarm V1.0 – Arduino & Raspberry Pi gesteuerter Roboterarm bauen
  8. Yama Seiki GA-2000CR: Kompaktes Drehzentrum mit Roboterarm & Palettensystem
  9. KUKA KMR iiwa: Mobiler kollaborativer Roboterarm für Industrie 4.0
  10. Roboterbetrieb durch präzise Servo-Bewegungstechnik optimieren