Controllo accessi I-button
Home › Forum › Programmazione IEC 61131 (LogicLab) › Controllo accessi I-button
- Questo topic ha 7 risposte, 3 partecipanti ed è stato aggiornato l'ultima volta 9 anni, 1 mese fa da
Sergio Bertana.
-
AutorePost
-
Settembre 12, 2011 alle 10:39 pm #35094
Anonimo
OspiteUtilizzando SlimLine vorrei realizzare un controllo accessi (inizialmente il cancello del giardino), che oltre il consenso all’apertura del cancello mi accenda le luci del vialetto di notte. Inoltre vorrei avere la possibilità su alcuni codici di mettere delle fasce orarie e poter visualizzare l’elenco delle chiavi da touch screen. Infine non ho capito come memorizzare le chiavi.
Settembre 14, 2011 alle 7:13 am #36946Massimo
ModeratoreTutto quanto richiesto è fattibile. I modi sono molteplici. Si potrebbe creare una struttura dati con i campi:
– id chiave
– orario inizio abilitazione
– orario fine abilitazione
– uscita da controllareda valorizzare nel task boot con i dati voluti. Se le uscite da controllare sono più di una, basta creare un array di tali strutture.
Altro modo potrebbe essere quello di creare su PC un file di configurazione (es. .csv) da inviare via FTP a SlimLine che lo leggerà valorizzando la struttura dati citata in precedenza.
La logica di controllo delle uscite risulterebbe la stessa per tutte le uscite, visto che si basa sui dati presenti nella struttura dati.La gestione del codice chiave letto via 1-wire dall’ i-button, è già implementata nella FB OWRdIdentifier che prevede di utilizzare l’ adattatore 1-Wire/RS232.
Per accendere le luci di notte su attivazione apertura cancello, basta creare una logica che legge un interruttore crepuscolare e se attivo, accende anche le luci.
Per visualizzare l’elenco delle chiavi da touch screen, poichè le chiavi sono dei valori UDINT, è sufficiente copiare tali valori nella DB100 che sarà leggibile dal touch screen usando il procotollo Modbus RTU o Modbus Over IP.
Maggio 7, 2012 alle 8:46 pm #37245Anonimo
OspiteMi puoi spiegare meglio come implementare la lettura dei codici da iButton e come poter definire da file CSV l’abilitazione dei codici ?
Esistono blocchi funzioni specifici per la gestione di files CSV ?
Mi potete fare un esempio di come fare il blocco funzione per gestire il file CSV con i dati per iButton ?Maggio 19, 2012 alle 7:05 am #37246Sergio Bertana
Amministratore del forumPer la lettura dei codici dai dispositivi iButton devi fare riferimento al manuale di programmazione SlimLine ed in particolare al blocco funzione sOWRdIdentifier. Questo blocco funzione ritorna l’ID univoco letto dall’iButton come array di 8 bytes.
Per quanto riguarda la gestione del file CSV di definizione codici puoi fare riferimento ad altri post su questo forum che trattano l’argomento. Ma per venirti incontro ho realizzato un programma completo che utilizzando parti reperite da altri esempi disponibili sul forum e modificandolo opportunamente esegue:
Lettura del codice dal dispositivo iButton connesso alla porta seriale tramite convertitore.
Lettura file CSV dalla memoria Storage di SlimLine (Vedi post).
Ricerca del codice TAG iButton all’interno del file CSV.Il file CSV l’ho strutturato semplicemente con codice TAG (16 digit esadecimali) e numero porta da aprire (Ho gestito 2 porte). Ma tu puoi modificarlo a tuo piacere aggiungendo orari di abilitazione ed ogni altra informazione sia necessaria (Vedi post). Allego la stampa ed il programma sorgente.
Marzo 16, 2016 alle 12:10 pm #39464Antonio
PartecipanteEssendo interessato alla realizzazione di un controllo di accesso camera per piccole strutture turistiche ho effettuto un test con l’esempio riportato nel manuale di programmazione con un iButton ed un adattare seriale onewire (che funziona perfettamente con le sonde di temperatura) ma ottengo il seguente funzionamento:
In debug visulalizzando il TAGID (array di 8 byte ) non appena lo script va in run l’array risulta valorizzato con numeri casuali (e questo potrebbe essere anche normale) ma la cosa strana è che non appena connetto al lettore l’iButton i byte del TAGID si azzerano per tornare ai valori precedenti non appena stacco.
Vi è qualche problema nelle librerie della mio PC ? è normale che l’ID di un ibutton sia zero ? purtroppo ho un solo pezzo a disposizione per cui non posso verificare l’integrità dell’iButton.
Marzo 17, 2016 alle 1:41 pm #39465Sergio Bertana
Amministratore del forumHo realizzato un progetto prendendo il programma di esempio riportato sul manuale e l’ho testato con un lettore iButton magnetico (Vedi foto) e non ho riscontrato i problemi che tu lamenti (Allego il programma iButtonRead per il download).
Come vedi l’array ROMID è una variabile locale ed all’avvio del programma e se nessun TAG presente è sempre di valore 0. L’array viene valorizzato solo quando il TAG è letto dal lettore. Tutti i TAGS hanno un codice univoco che è stampigliato sul TAG stesso, non esistono TAG con codice 0.
Quindi le possibilità sono, hai collegato i due fili del reader al contrario, prova a scambiarli, il TAG che usi non è compatibile, io utilizzo i DS1990R (Vedi pagina). Il programma non è eseguito nella task Back. Prova a vedere se il programma che ti ho postato funziona.
Marzo 18, 2016 alle 7:13 am #39466Antonio
PartecipanteRisolto il tuo esempio funziona perfettamente. Il problema risiedeva nel fatto che stavo utilizzando un adattatore RS232 – onewire con ID anzichè il vostro modello S09 senza ID.
Marzo 18, 2016 alle 10:17 am #39467Sergio Bertana
Amministratore del forumBenissimo, informazione che può essere utilissima ad altri utenti.
Ricordo che da un pò di tempo abbiamo rilasciato il terminale Picoface che ha già integrato tutto l’hardware ed il software per la lettura dei dispositivi One-Wire. Il FB HMIPicoface ritorna tutte le informazioni acquisiste dal dispositivo One-Wire. Nel caso si connetta un TAG viene ritornato l’ID del TAG, se si connette un sensore di temperatura (Esempio TR 161-25) viene ritornato l’ID ed il valore di temperatura. Aggiungo un link a questo topic dove viene trattato un controllo accessi con iButton.
-
AutorePost
- Devi essere connesso per rispondere a questo topic.