Interruttore finecorsa con OPTA

Buongiorno a tutti,
Utilizzamo un interuttore finercosa meccanico e vorremo sapere quando chiuso o quando è aperto.

Ho collegato un pin dell'interruttore al pin 2 di Arduino e l'altro pin a GND di Arduino e tutto funziona perfettamente con Arduino Uno R4 WIFI.

Non riusciamo però a farlo a farlo funzionare con OPTA Advanced Tipo 8A.04.9.024.8320
Lo stato non cambia mai.
Potete darci una mano ?
Abbiamo provado con i pin I3,I4,I5
Grazie mille.

const int pinInterruttore = 2;  // Pin a cui è collegato l'interruttore

void setup() {
  pinMode(pinInterruttore, INPUT_PULLUP);  // Configuro il pin come input con pull-up interno
  Serial.begin(9600);
}

void loop() {
  int stato = digitalRead(pinInterruttore);

  if (stato == LOW) {
    Serial.println("Chiuso");
  } else {
    Serial.println("Aperto");
  }A

  delay(500); // Aspetto mezzo secondo prima di rileggere
}

Il programma è giusto (a parte stato, che dovrebbe essere bool, ma addirittura puoi mettere il digitalRead nell'if). Non conosco Opta. Probabilmente è sbagliato il pin su cui legge.

Opta non sente chiusure verso massa. Bisogna fornire tensione (12 o 24 Vcc) agli ingressi I1..I8 (che sono chiamati A0..A7 o PIN_A0..PIN_A7). Gli ingressi hanno una resistenza di pull-down interna di 8,9 kΩ. Tensioni inferiori a 4,46 V vengono lette come LOW, superiori a 6,6 V vengono lette come HIGH.

1 Like

Ok, ti ringrazio molto.

scusa la domanda da principiante per massa intendi i morsetti - come da foto allegata ?

...pensa che, erroneamente credo, stavo usando GND che si trova nei morsetti del ModBus !

Un'altra cosa ho capito il tuo ragionamento, ipotizza quindi che su quel filo arrivi "un disturbo" sopra i 6,6v questo verrebbe cmq interpretato come HIGH vero ?
Morale per la mia esperienza da neofita ecco il mio ragionamento:

considerando che sarebbe quasi impossibile avere un disturbo che arriva a 24V potrei analizzare il voltaggio via codice e settare su HIGH diciamo se e solo se ho 24v ? Una sorta di filtro software insomma per capirci.

Oppure con questa configurazione sono "blindato" anche da eventuali disturbi facendo entrare o no 24V sul pin ?
Il 24V posso prenderlo da alimentatore stesso dell Opta vero ?
TI ringrazio molto per la disponibilità e mi scuso per il livello un pò "basico" delle questioni.
Un saluto,


?

Si per "massa" intendevo il meno dell'alimentazione (che in teoria dovrebbe essere anche il GND dell' RS485).

L'interruttore si collega semplicemente tra ingresso (I1..I8) e positivo alimentazione .

Facendo una lettura digitale non puoi valutare la tensione, però per i disturbi impulsivi si può applicare una strategia software di debounce, leggi l'ingresso tre volte a distanza di 10 millisecondi e lo consideri buono se tutte le letture sono uguali.

1 Like