Hallo Leute, ich habe mir eine CNC-Graviermaschine gekauft und betreibe diese auch schon fleißig. Jetzt möchte ich einen weiteren Schritt gehen und während des Betriebes der CNC-Maschine (ArduinoClon) eine Kommunikation zu einem anderen Arduino UNO aufbauen. Das heißt ich möchte zum Beispiel am Ende des Programmzyklus (G-Code) eine Meldung an den Arduino UNO von dem CNC-Arduino bekommen. Und mit dieser Meldung dann einen Prozess in dem Arduino UNO auslösen. Weiß einer von euch wie sowas geht? Grüße Baril
:
Verschoben durch Moderator
Werte doch einfach das "Coolant enable" (Pin A3) Signal aus mit deinem UNO, welches Du per GCode am Arduino-Clon setzt (ich vermute mal GRBL). GRBL: https://github.com/gnea/grbl/wiki/Connecting-Grbl GCode: http://linuxcnc.org/docs/html/gcode/m-code.html#mcode:m7-m8-m9
Hallo, und danke für deine Antwort. Wie soll das funktionieren? Ich schließe den extra arduino an den PIN A3 und frage dann per Programm die Werte ab? Grüße Baril
Hallo nochmal, also ich hab jetzt den enable coolant mit dem arduino verbunden und GND von CNC-shield und arduino GND verbunden. Dann habe ich die Abfrage gestartet mit... int inPin = 3; // Input pin für Arduino int reading; // Wert des Eingangs int previous = LOW; // Vorheiger Wert des Eingangs // folgende Variablen müssen vom Typo unsigned long sein da millis() disen Variablentyp liefert. unsigned long time = 0; // letzter Zeitwert bei dem der Ausgangzustand wechselte. unsigned long debounce = 200; // Entprellzeit void setup() { pinMode(inPin, INPUT); pinMode(outPin, OUTPUT); } void loop() { reading = digitalRead(inPin); // Beim Wechsel des Eingangs von LOW zu HIGH und nach der Entprellzeit: if (reading == HIGH && previous == LOW && millis() - time > debounce) { time = millis(); Tue irgendwas } // Beim Wechsel des Eingangs von HIGH zu LOW und nach der Entprellzeit: if (reading == LOW && previous == HIGH && millis() - time > debounce) { time = millis(); Tue irgendwas anderes } previous = reading; } Funktioniert aber nicht kann mir einer auf die Sprünge helfen?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.