Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Overzicht

Deze Arduino-gebaseerde automaat heeft 4 uitgifte-eenheden (continue rotatieservos), een draagsysteem (stappenmotors), LCD, 4 keuzeknoppen en een munt-detector. Het draagsysteem is misschien overkill, maar maakt het project interessanter en leerzamer – ideaal voor studenten of enthousiastelingen.

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Automaat bouwen

MDF 8 mm, afmetingen uit 3D-model (Thangs). Cirkelzaag (zelfgemaakte werkbank met cirkelzaag, router, zaagblad – zie kanaal Creativity Hero). Openingen met staande zaag. Alle panelen: houtlijm, schroeven (3 mm, voorboren, inzakken), 90° klemmen, F-klemmen.

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding
Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding
Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Railsysteem (drager)

Aluminium buizen: horizontaal 16 mm (2×27 cm), verticaal 20 mm (3×45 cm). In 18 mm hout: gaten met Forstnerboor. Schuiven: 21×21 cm hout, 8 mm gaten, M8 draadstangen, 22 mm lagers (horizontaal: 16 mm lagers). Eerst te veel spel → afstand rails verkleind: gaten uitgezaagd, dwarsgaten, draadstang om rails dichterbij te trekken. Werkt nu soepel.

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding
Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding
Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Extra: 5 mm bout links voor katrol (horizontale tijmriem) + 2 lagers voor verticale schuif. Rechts: stappenmotor horizontaal op MDF, steun, op verticale schuif lijmen/schroeven.

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding
Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Container op horizontale schuif (hout, lijm). Rails met epoxy in gaten, extra houtplaat voor stijfheid. Verticaal: stappenmotor bovenaan, katrol onderaan, tijmriemen met kabelbinder.

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding
Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding
Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Uitgifte-eenheden

Helicale spoel: 3 mm metalen draad om 7 cm spraybus. Op continue rotatieservo (DS04-NFC) lijmen (lijmpistool).

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding
Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Voorpaneel

Deur met scharnieren, magnetische sluiting. 5 mm acrylaat voor groot raam, dun aluminiumplaatje voor klein raam (4 knoppen, muntinvoer, LCD). Gaten boren/zagen. Electronica op aluminiumplaat, dan op deur (5 mm bouten). Twee microschakelaars voor startpositie drager. Muntgeleider (lijm) naar beneden. Munt-detector: IR nabijheidssensor.

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding
Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Schakelschema

12 V / ≥2 A voeding. 12 V voor stappenmotors + LED-strip. Buck converter (LM2596) naar 5 V voor rest. Continue servos (5 V, PWM). Stappenmotors via A4988 drivers. Knoppen + microschakelaars: GND + digitale pinnen met interne pull-up.

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Componenten

  • DC-DC LM2596 Buck Converter
  • 16×2 LCD
  • 360° Continue Servomotor (DS04-NFC) ×4
  • Stappenmotor NEMA 17 ×2
  • A4988 Stappenmotor Driver ×2
  • IR Nabijheidssensor
  • Knoppen ×4
  • Micro limietschakelaar ×2
  • Arduino Board

Aansluiten met draadbruggen (wat rommelig, maar werkt). LED-strips op deur voor verlichting.

Bouw een Slimme Arduino Automaat: Complete DIY Mechatronica Handleiding

Arduino Code

Bibliotheken: LiquidCrystal.h, Servo.h. Pinnen definiëren, objecten aanmaken.

/* DIY Automaat - Arduino Mechatronica Project */
#include <LiquidCrystal.h>
#include <Servo.h>

LiquidCrystal lcd(27, 26, 25, 24, 23, 22); // rs, en, d4, d5, d6, d7
Servo servo1, servo2, servo3, servo4; // DS04-NFC

#define dirPinVertical 0
#define stepPinVertical 1
#define dirPinHorizontal 2
#define stepPinHorizontal 3
#define coinDetector 9
#define button1 13
#define button2 12
#define button3 11
#define button4 10
#define microSwitchV 15
#define microSwitchH 14

int buttonPressed;

setup(): LCD init, servos koppelen (pinnen 4-7), pinmodes, pull-ups activeren. Startpositie zoeken via microschakelaars (while-lussen met stappen).

void setup() {
  lcd.begin(16, 2);
  servo1.attach(4); servo2.attach(5); servo3.attach(6); servo4.attach(7);
  pinMode(dirPinVertical, OUTPUT); pinMode(stepPinVertical, OUTPUT);
  pinMode(dirPinHorizontal, OUTPUT); pinMode(stepPinHorizontal, OUTPUT);
  pinMode(coinDetector, INPUT);
  pinMode(button1, INPUT_PULLUP); pinMode(button2, INPUT_PULLUP);
  pinMode(button3, INPUT_PULLUP); pinMode(button4, INPUT_PULLUP);
  pinMode(microSwitchV, INPUT_PULLUP); pinMode(microSwitchH, INPUT_PULLUP);

  // Verticaal start
  digitalWrite(dirPinVertical, HIGH);
  while (true) {
    if (digitalRead(microSwitchV) == LOW) { moveUp(70); break; }
    digitalWrite(stepPinVertical, HIGH); delayMicroseconds(300);
    digitalWrite(stepPinVertical, LOW); delayMicroseconds(300);
  }
  // Horizontaal start
  digitalWrite(dirPinHorizontal, LOW);
  while (true) {
    if (digitalRead(microSwitchH) == LOW) { moveLeft(350); break; }
    digitalWrite(stepPinHorizontal, HIGH); delayMicroseconds(300);
    digitalWrite(stepPinHorizontal, LOW); delayMicroseconds(300);
  }
}

loop(): "Insert a coin!" tonen. Wachten op munt (IR sensor LOW). Dan "Select your item 1,2,3,4?". Wachten op knop. "Delivering...". Switch-case per knop: drager bewegen (custom functies moveUp/Down/Left/Right met stappen), juiste servo draaien (950 ms, 2000 µs = draaien, 1500 µs = stop), drager terug naar start. "Item delivered!" tonen.

void loop() {
  lcd.clear(); lcd.setCursor(0,0); lcd.print("Insert a coin!");
  while (true) { if (digitalRead(coinDetector) == LOW) break; }
  delay(10);
  lcd.clear(); lcd.setCursor(0,0); lcd.print("Select your item");
  lcd.setCursor(0,1); lcd.print(" 1, 2, 3 or 4?");
  while (true) {
    if (digitalRead(button1) == LOW) { buttonPressed=1; break; }
    if (digitalRead(button2) == LOW) { buttonPressed=2; break; }
    if (digitalRead(button3) == LOW) { buttonPressed=3; break; }
    if (digitalRead(button4) == LOW) { buttonPressed=4; break; }
  }
  lcd.clear(); lcd.setCursor(0,0); lcd.print("Delivering...");
  switch (buttonPressed) {
    case 1:
      moveUp(4900); delay(200); moveLeft(1700); delay(300);
      servo1.writeMicroseconds(2000); delay(950); servo1.writeMicroseconds(1500); delay(500);
      moveRight(1700); delay(200); moveDown(4900); break;
    case 2:
      moveUp(4900); delay(200);
      servo2.writeMicroseconds(2000); delay(950); servo2.writeMicroseconds(1500); delay(500);
      moveDown(4900); break;
    case 3:
      moveUp(2200); delay(200); moveLeft(1700); delay(300);
      servo3.writeMicroseconds(2000); delay(950); servo3.writeMicroseconds(1500); delay(500);
      moveRight(1700); delay(200); moveDown(2200); break;
    case 4:
      moveUp(2200); delay(200);
      servo4.writeMicroseconds(2000); delay(950); servo4.writeMicroseconds(1500); delay(500);
      moveDown(2200); break;
  }
  lcd.clear(); lcd.setCursor(0,0); lcd.print("Item delivered!");
  delay(2000);
}

Custom beweegfuncties: richtingpin zetten, stappen pulseren (300 µs hoog/laag). A4988 op 1/4 stap → 4900 stappen voor bovenste positie, etc.

void moveUp(int steps) {
  digitalWrite(dirPinVertical, LOW);
  for (int x=0; x

Eenvoudig, effectief. Veel plezier met bouwen! Vragen? Reacties.

Productieproces

  1. Automaatjes: Een Amerikaanse Industriemacht van $36,6 Mrd
  2. Bouw je eigen DIY huiswerk-schrijfmachine thuis
  3. Bouw een DIY Photoshop-bedieningsconsole met Arduino Nano RP2040
  4. Bouw een indrukwekkend monitor Ambilight-systeem met Arduino
  5. Bouw een Ultrasonische Zweefapparaat met Arduino – Stap-voor-stap Handleiding
  6. Een slimme voltmeter bouwen met Arduino en smartphone – Eenvoudig DIY-project
  7. Bouw een betrouwbare infrarode hartslagsensor met Arduino: stapsgewijze handleiding
  8. Arduino Boter-Kaas-Eieren met MAX7219 LED Matrix en Kartonnen Behuizing
  9. Bouw een DIY Voltmeter met Arduino en Nokia 5110 Display – Stap-voor-Stap Handleiding
  10. Bouw een Digitale Horloge op Arduino met een Finitie Toestandsmachine
  11. Bouw een Volledig Functionele CNC-machine met Arduino Nano R3