

)
.gif)
Noname; Ja mein Ansatz war schon richtig, ich dachte mir auch einfach nur nen LOW befehl zum schluss setzten damit der Motor ausgeht hat aber nich gefunzt. Deine Sketche werd ich jetzt durchgehen, sieht vielversprechend und selbstredend aus.
Relais: ersten fand ich nirgends einen eindeutigen Hinweis wie ist die Motorseite überhaupt schalten soll, also was die 3 Kanäle überhaupt bedeuten, Anschluss am Arduino ist klar.
Dann denk ich mal das mein sketch nicht richtig gearbeitet hat, er sollte glaub in 2 Sek Takt schalten aber laut Messgerät gab es keine Änderungen an den Ausgängen. Ich teste das nochmal mit deinen Infos.


Ich würde vorschlagen nach dem Bewegen vom Motor einen MotorAus Befehlt zu senden mit
Folgenden Code dann noch nach dem Loop einfügen:Code:MotorAus();
Würde interessieren, ob die Leds danach noch leuchten und ob der Treiber weiter heiß wird. Und auch das Verhalten des restlichen Codes, also ob der Motor dann noch angeht...Code:void MotorAus (){ digitalWrite(8, LOW); digitalWrite(9, LOW); digitalWrite(10, LOW); digitalWrite(11, LOW); }





#include "Stepper.h"
#include "IRremote.h"
/*----- Variables, Pins -----*/
#define STEPS 32 // Number of steps per revolution of Internal shaft
int Steps2Take; // 2048 = 1 Revolution
int receiver = 6; // Signal Pin of IR receiver to Arduino Digital Pin 6
/*-----( Declare objects )-----*/
// Setup of proper sequencing for Motor Driver Pins
// In1, In2, In3, In4 in the sequence 1-3-2-4
Stepper small_stepper(STEPS, 8, 10, 9, 11);
IRrecv irrecv(receiver); // create instance of 'irrecv'
decode_results results; // create instance of 'decode_results'
void setup()
{
irrecv.enableIRIn(); // Start the receiver
}
void loop()
{
if (irrecv.decode(&results)) // have we received an IR signal?
{
switch(results.value)
{
case 16761405: // forward pressed
small_stepper.setSpeed(700); //Max seems to be 700
Steps2Take = 8192; // Rotate CW
small_stepper.step(Steps2Take);
break;
case 16712445: // backwards pressed
small_stepper.setSpeed(700);
Steps2Take = -8192; // Rotate CCW
small_stepper.step(Steps2Take);
break;
}
MotorAus();
irrecv.resume(); // receive the next value
}
}
void MotorAus ()
{
digitalWrite(8, LOW);
digitalWrite(9, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
/* --end main loop -- */


Ich kann mich halt so schwer zurück haltenWir müssen hier echt mal etwas runterschalten ich komm gar nich mit xD.
Musste Weekend schon den Log durchwühlen weil ich nach nem Tip von eich gesucht habe.
Madpygon: Ich persöhnlich würde es mir nicht zumuten xd aber da mir letztens schon die Codes im Schlaf um die Ohren geflogen sind und mir bei jeden neuen Sketch auch wieder ein Licht aufgeht, gibts kein Zurück mehr "denn ich bin ganz nah dran"(gibt nen Lied von dem Spruch, cassandra steen"Küss den Frosch" gefällt mir)
Neuland für uns??? Hahaha ich glaub ich und Leon sind hier die einzigen die nur Bahnhof verstehen, mit dem Unterschied er ist halb so alt wie ich![]()




Alle 4 Lampen gehen aus und er nimmt danach auch wieder jeden Befehl per FB an.![]()
Werden die Treiber denn danach immer noch heiß?


int relayPin1 = 7; // Hier den Signal Pin eintragen
void setup()
{
pinMode(relayPin1, OUTPUT); // sets the digital pin as output
digitalWrite(relayPin1, HIGH); // Prevents relays from starting up engaged
}
void loop()
{
digitalWrite(relayPin1, LOW); // energizes the relay and lights the LED
delay(1000); // waits for a second
digitalWrite(relayPin1, HIGH); // de-energizes the relay and LED is off
delay(1000); // waits for a second
}
Ick verzweifle hier voll.
Beim ersten Sketch hab ich die Treiber LEDs mal kurz aufblitzen sehen(2 davon), mehr aber nicht, vermutlich schaltet er sie sofort wieder aus.
Bevor ich da weiter mit delays probiere habe ich nach und nach die disable und false Befehle gelöscht aber ohne Erfolg.
Nach ner Stunde bin ich dann demotiviert zum zweiten Sketch gesprungen, da der aufgrund des Tastenfeldes ja interessanter für mich ist aber auch da geht nix.
Die AccelStepper.h definiert die Ausgänge ja auf Default(2,3,4,5), nimmt die 8,8,9,10,11 gar nicht an auch ohne die erste 8.
Habs einfach gelöscht und auf 2,3,4,5 umgesteckt aber er nervt nur beim kompilieren.
Dieses "was not declared in this scope" und jenes "was not declared in this scope"
Versuch mir die ganze Zeit mit den Beispielen etwas zu basteln aber dat is alles schon wieder total anders. Mit maxspeed, moveto, setacceleration.
Soll ich dir was sagen? Mir gefällt die AccelStepper.h nicht.
Ich will meine Steps zurück, so lässt sich für mich später auch am einfachsten das öffnen und schließen einstellen.

. Kann ich an die analogen gehen oder funzt das nicht und wie sind deren Adressen?

#include "Stepper.h"
#include "Keypad.h"
/*-----( Declare objects )-----*/
#define STEPS 32 // Number of steps per revolution of Internal shaft
int Steps2Take; // 2048 = 1 Revolution
// Setup of proper sequencing for Motor Driver Pins
// In1, In2, In3, In4 in the sequence 1-3-2-4
Stepper small_stepper(STEPS, 10, 12, 11, 13);
//Deklarationen Keypad
const byte numRows= 4; //number of rows on the keypad
const byte numCols= 4; //number of columns on the keypad
//keymap defines the key pressed according to the row and columns just as appears on the keypad
char keymap[numRows][numCols]=
{
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
//Hier die richtigen Pins eintragen!!! Anschlussgrafik gibt es z.B. hier http://www.learningaboutelectronics.com/Articles/Arduino-keypad-circuit.php
byte rowPins[numRows] = {9,8,7,6};
byte colPins[numCols]= {5,4,3,2};
//initializes an instance of the Keypad class
Keypad myKeypad= Keypad(makeKeymap(keymap), rowPins, colPins, numRows, numCols);
void setup()
{
}
void loop()
{
char keypressed = myKeypad.getKey(); //Tastedruck am Keypad erfassen
{
if (keypressed == 'A') //Falls der Tastendruck A war dann Tür öffnen usw... Welche Zeichen da tatsächlich empfangen werden müsste über den Seriellen Monitor rausgefunden werden.
// und ob die Zeichen um das A stimmen bin ich mir grad nicht sicher, könnte auch sein, dass da "" hin muss....
// forward pressed
{ small_stepper.setSpeed(1000); //Max seems to be 700
Steps2Take = 2048; // Rotate CW
small_stepper.step(Steps2Take);
}
if (keypressed == 'B')
// backwards pressed
{
small_stepper.setSpeed(1000);
Steps2Take = -2048; // Rotate CCW
small_stepper.step(Steps2Take);
}
MotorAus();
}
}/* --end main loop -- */
void MotorAus ()
{
digitalWrite(12, LOW);
digitalWrite(13, LOW);
digitalWrite(10, LOW);
digitalWrite(11, LOW);
}
YipieeeJaaaaaaaa Super, das Keypad ist nun wieder im Spiel!!!
David hab deinen Keypad Sketch mit der Stepper.h und dem Abschaltcode kombiniert. IT WORKS!!!!![]()
das freut mich sehr zu hören! Dann kann ja die nächste Baustelle kommen 
int ledPin = 4; // LED connected to digital pin D4
void setup()
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
}
int ledPin = 14; // LED connected to A0
void setup()
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
}
A0-A7? Hört sich ja so an als wenn ich sie frei Adressieren kann. Welche Kann man denn nehmen damit der Arduino auch weiß welche er schalten muss. Ich mein ich kann ja nicht 15(A1) nehmen wenn A0(14)gemeint ist?
int ledPin = A0; // LED connected to A0 == 14
void setup()
{
pinMode(ledPin, OUTPUT); // sets the digital pin as output
}
