Dags att presentera mitt nyaste projekt som vart klart igår. [ATTACH=CONFIG]125927[/ATTACH] Delarna till denna reaktor är som följer 1 FSZ zeolite reaktor (fishstreet) 1 arduino uno (kjell o co) 1 ST-M5045 stepper driver (ebay) 1 shaft connector (cnc4u) 1 nema23 4nm stepper motor (cnc4u) 1 mounting kit (cnc4u) 1 36v 5a power supply bult, skruv, silvertejp och kabel. Jag började med att försöka köra på en motorshield som skulle klara 2a per kanal. Denna kunde drive motorn i ungefär 3 sekunder innan den vart överhettad och slog av. Så jag vart tvungen att skaffa en riktig stegmotor drivare, den var dock ungefär lika dyr som motor shielden så ingen större förlust antar jag. När jag väl fått motorn att rotera fäste jag den i locket genom att borra 4st 6mm hål och fäste monteringskitet med 4st 5mm skruvar och muttrar. Det knepigaste var att fästa motorn i reaktor skaftet detta gjordes genom att jag kapade en del av skaftet till reaktorn och fäste en bult (m10) i den. Jag la sedan ett varv med silvertejp på den så att min coupling på 12mm skulle kunna få grepp om den. För att inte muttern skulle lossna från skaftet så borrade jag ett 6mm hål även genom detta och fäste en skruv med mutter genom bulten. Jag fylld även hålet runt muttern med "chemical metal" från plasticpadding. Koppling mellan motor och drivare är som man kan se här: http://cnc4you.co.uk/resources/Stepper%20Motor%20Nema%2023%2060BYGH401-03%204Nm.pdf Kopplingen är vad dom kallar för "bipolar parallel" Koppling arduino -> drivare: 5v pin -> pul+ and dir+ pin 8 -> dir- pin 9 -> pul- Drivarens inställningar: 400 puls/rev 4A Full current Kod till arduino: // Bounce.pde // -*- mode: C++ -*- // // Make a single stepper bounce from one limit to another // // Copyright © 2012 Mike McCauley // $Id: Random.pde,v 1.1 2011/01/05 01:51:01 mikem Exp mikem $ #include <AccelStepper.h> // Define a stepper and the pins it will use AccelStepper stepper(2, 8, 9); // dir_a and dir_b pins used const int pwmA = 8; const int pwmB = 9; void setup(){ Serial.begin(9600); stepper.setMaxSpeed(7000); stepper.setAcceleration(4000); stepper.moveTo(5000); pinMode(pwmA, OUTPUT); pinMode(pwmB, OUTPUT); digitalWrite(pwmA, HIGH); digitalWrite(pwmB, HIGH); // initialize the serial port: } void loop() { // If at the end of travel go to the other end if (stepper.distanceToGo() == 0) stepper.moveTo(-stepper.currentPosition()); stepper.run(); }