Go Down

Topic: Bei Eingangssignal, die 14 Digitalen Ausgänge Schalten (Read 781 times) previous topic - next topic

chrizzo2k19

Feb 10, 2019, 02:44 pm Last Edit: Feb 10, 2019, 02:45 pm by chrizzo2k19
Hallo,

und zwar habe ich ein Arduino Uno Rev 3. Und zwar möchte ich folgendes machen. Von einem  programmierbaren PG-Ausgang kommt ein Signal (Ich glaube in Form von 12 Volt). Ob dies als Impuls kommt oder ein gewisser Zeitraum (z.B. 10 sec) genutzt wird kann ich einfach einstellen von dem PG Ausgang.

Wenn das Signal kommt, soll zu erst Digital PWM 1 geschalten werden.

Wenn das Eingangssignal abfällt und zum Beispiel 2 Stunden später wieder schaltet, soll darauf Digital PWM 2 geschalten werden. Es muss also immer pro Eingangssignal ein darauf folgender Digitaler PWM schalten, und niemals der Vorgänger.

Geht das so umzusetzen?

uwefed

Quote
Geht das so umzusetzen?
Ja, Du merkst Dir welcher Ausgang das letzte mal geschaltet wurde und schaltest beim trigger den nächsten.
Nimm zur  entkopplung einen Optokoppler den Du mit den 12V ansteuerst (Vowiderstand nicht vergessen)

PS. Der Arduino UNO hat keine 14 PWM Ausgänge sondern nur 6.
Grüße Uwe

combie

Quote
Geht das so umzusetzen?
Klar!
Wenn du noch ein paar PWM Ausgänge dazu kaufst....
Oder Soft PWM verwendest.
Der Pessimist sieht die Wolke vor der Sonne.
Der Optimist sieht die Sonne hinter der Wolke.

Mantra: Die Sonne scheint immer!

postmaster-ino

Hi

In Hardware werden 14 PWM-Ausgänge nicht gehen.
In Software kein größeres Problem, wobei man hier schauen muß, ob man mit der erreichbaren Geschwindigkeit hin kommt.
Du brauchst definitiv PWM (pulse with modulation/Pulsweitenmodulation)?
Oder reicht Dir ein einfaches 'HIGH' als Ausgang - dann noch: In welcher Spannung muß das Signal abgegeben werden?

Was ist ein PG-Ausgang?

Wenn der Ausgang ebenfalls aktiv auf 0V schaltet (Push-Pull-Stufe), dann ist die Erfassung, sofern keine anderen externen Umstände greifen, trivial.

Ich entnehme Deinen Ausführungen, daß 'immer der nächste Ausgang' geschaltet werden soll, wenn am Eingang ein Impuls erkannt wird - bzw. eine der Flanken.
Prellt das Signal? Bei elektronischen Ausgängen kann man hier normal 'Nein' antworten - bei Relais-Ausgängen ist ein Prellen aber definitiv gegeben.

Was passiert, wenn das 15.te Signal erkannt wird bzw. wie wird die Schaltung in den Grundzustand zurück versetzt?

Schreibe bitte etwas genauer, was Du willst - bitte nicht, wie Du denkst, Das erschlagen zu können.

Ein µC kann eigentlich ALLES steuern, nur maß zwischen Ihm und der Welt oft noch ein Zwischending, daß sowohl die Welt den µC versteht, wie auch, daß der µC die Welt auch überlebt.

MfG
anscheinend ist Es nicht erwünscht, einen Foren-internen Link als 'Homepage' einzubinden, damit JEDER nur einen Klick von combie's Liste zum Thema State-Maschine entfernt ist.
... dann eben nicht ...

chrizzo2k19

#4
Feb 10, 2019, 03:12 pm Last Edit: Feb 10, 2019, 03:15 pm by chrizzo2k19
Ok also moment. Ich habe leider derzeit 0 Erfahrungen in der Programmierung. Ich hatte mal vor Jahren ein Uno 1, aber zur Zeit bin ich total raus.

Und zwar habe ich das Board: https://www.voelkner.de/products/758237/Arduino-Board-Uno-Rev3-DIP-Version-ATMega328.html

Da steht Digital PWM 0-13 = 14 richtig? Sind also nicht alle 14 nutzbar?

Und zwar schickt ein Alarmsystem über einen Programmieren Ausgang ein Signal, das an ein Funk Relais 12V geschickt wird.

Ausgangslast des Relais: max. 1 A 30 V GLEICHSTROM und ich kann festlegen ob NC oder NO.

Die entsprechenden Komponenten die an den Digitalen PWMs hängen, benötigen 3,3 - 5V, mehr nicht. Daher liegt immer Minus an, und die digitalen PWMs sollen dann die Plus Spannung durch schicken, um die Komponente auszulösen. (Wenn + und - Anliegt). Die Zeit wo die Digitalen PWMs was schicken sollen, dauert nicht länger als 60sek und kann danach deaktiviert werden.

Dieses Signal soll auf das Arduino geschickt werden, in Form von Verkabelung. Darauf hin soll das ganze so Programmiert werden, das jedes mal wenn ein Signal geschickt wird, einer der Digitalen PWMs geschalten werden soll auf dem Arduino. Aber immer in fortlaufender Reinfolge, und beim erreichen des letzten Digitalen PWM, soll das ganze Resetet werden und von vorne anfangen.

Tommy56

Was mir aus Deiner Beschreibung nicht klar ist, wofür Du überhaupt PWM brauchen willst. Für mich klingt das nach einfach einen Ausgang einschalten (HIGH).

Gruß Tommy
"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

chrizzo2k19

#6
Feb 10, 2019, 03:20 pm Last Edit: Feb 10, 2019, 03:23 pm by chrizzo2k19
Na das Problem ist, ich habe als Beispiel 14 Komponenten, die immer fortlaufend geschalten werden sollen, wenn ein neues Signal kommt. In dem Falle ist das Schalten, einfach nur das Herstellen von 3,3 - 5V Spannung.

Wenn das Signal von der Alarmanlage kommt, dürfen eben nicht alle 14 Komponenten gleichzeitig auslösen. Die sind daher alle 14 einzeln Verkabelt.

Da diese Funktion in dem Alarmsystem nicht vorgesehen ist, hatte ich mir gedacht das über ein externes Board, in dem Falle das Arduino zu realisieren, weil ich ja dort 0-13 Digitale PWMs habe?!?!

Tommy56

Damit sagst Du klar, dass Du überhaupt kein PWM brauchst. Damit kannst Du die digitalen Ausgänge 2-14 und 2 Analoge Pins als digitale Ausgänge benutzen und auf HIGH (knapp 5V) schalten.
Damit bleiben die D0 und D1 frei für die Programmierung.

Gruß Tommy
"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

chrizzo2k19

Achso ok, Und jetzt ist das Problem, wie setze ich das um in der Programmierung? Wie gesagt, derzeit 0 Kenntnisse vorhanden. Und auf welchem Eingang muss ich gehen, um das Signal von dem Relais auf das Arduino zu schicken? V IN?

uwefed

Ich lese in der Beschreibung
Quote from: https://www.voelkner.de/products/758237/Arduino-Board-Uno-Rev3-DIP-Version-ATMega328.html
Der Controller verfügt über 14 digitale Ein- und Ausgänge (von denen 6 im PWM-Modus genutzt werden können),
Außerdem kannst Du mittels PWM nicht einfach aus 5V keine 3,3V machen.

Werde konkret: Was willst Du denn ansteuern?

Grüße UWe

postmaster-ino

#10
Feb 10, 2019, 03:33 pm Last Edit: Feb 10, 2019, 03:34 pm by postmaster-ino
Hi

Daß Du NULL Ahnung hast, solltest Du noch ein paar Mal wiederholen, sonst glaubst Du selber nicht wirklich dran: hör auf mit dem Scheiß, schreibe, daß Du Das lernen willst - sagt das Gleiche aus, gibt Dir aber eine positive Einstellung.

MfG

PS: Was kannst Du zu Vin heraus finden?
Und bitte Noch ein Mal: WAS willst Du wirklich?
MALE Das am Besten auf, in möglichst kleinen Schritten.
anscheinend ist Es nicht erwünscht, einen Foren-internen Link als 'Homepage' einzubinden, damit JEDER nur einen Klick von combie's Liste zum Thema State-Maschine entfernt ist.
... dann eben nicht ...

Tommy56

Da könntest Du z.B. A2 nehmen. Vergiss aber nicht einen Spannungsteiler vor zu schalten, damit nicht mehr als 5 V am Arduino ankommen, sonst grillst Du den.

Gruß Tommy
"Wer den schnellen Erfolg sucht, sollte nicht programmieren, sondern Holz hacken." (Quelle unbekannt)

chrizzo2k19

Ich lese in der BeschreibungAußerdem kannst Du mittels PWM nicht einfach aus 5V keine 3,3V machen.

Werde konkret: Was willst Du denn ansteuern?

Grüße UWe
Ok, also wir legen uns auf 5V fest. 3,3V brauch es mindestens, verträgt aber auch 5V ohne Probleme.

Was will ich ansteuern. Eine Komponente, die eben bloss die 5V brauch um Auszulösen. Hier soll also nur Strom durchgeschleift werden, bei ankommenden Signal. Ich versuche es mal aufzumalen. postmaster-ino. Natürlich möchte ich es verstehen und auch lernen, habe eben derzeit keinen Ansatz.

Das mit dem Spannungsteiler geht klar.

uwefed

Braucht die ominöse Komponente ein 5V Signal oder eine 5V Versorgung?

Grüße Uwe

chrizzo2k19

#14
Feb 10, 2019, 03:55 pm Last Edit: Feb 10, 2019, 04:01 pm by chrizzo2k19


An sich reicht ein 5V Impuls/Signal aus, um die Treibladung zu zünden. Eine permanente Versorgung ist daher nicht nötig.

Achja, ich bin bereit auch gerne paar € in die Hand zu nehmen, wenn mir jemand das Programmiert!

Go Up