powermoro Inserito: 7 maggio 2007 Segnala Inserito: 7 maggio 2007 Ciao a tutti. Programmo plc da circa 9 mesi per conto di un'azienda; finora pochi problemi in quanto si è sempre trattato di segnali digitali e cicli piu o meno semplici. Ora mi trovo a dover gestire una Pt100, e quindi un ingresso analogico. solamente che non so come fare a dire al plc, utilizzando la lista istruzioni, " quando raggiungi tot temperatura fai partire la ventola di raffreddamento"... potete aiutarmi? grazie in anticipo
Claudio Monti Inserita: 7 maggio 2007 Segnala Inserita: 7 maggio 2007 Innanzitutto per leggere un valore analogico devi disporre di un modulo di ingressi analogici...Se vuoi leggere direttamente le Pt100 c'e' un modulo per i Mocro che mi sembra si chiami TSXAEZ414 (o qualcosa di simile, meglio se controlli nel catalogo).Se invece le tue Pt100 hanno a bordo un convertitore (es. 4-20mA) allora devi disporre di un modulo che accetti il giusto range di ingresso.Detto questo devi mappare il modulo, ovvero decidi dove posizionarlo nel rack e a questo punto avrai un indirizzo di riferimento per il tuo ingresso analogico (es. %IW3.0 = canale 0 del modulo 3 in formato 16 bit).Nel programma dovrai usare le funzioni COMPARE per gestire il tuo valore.Esempio in ST IF %IW3.0 >= %MW100 THEN SET %Q2.0Dove %MW100 contiene il valore di riferimento e Q2.0 e' l'uscita per accendere il ventilatore.Ovviamente l'esempio e' volutamente semplice, ricorda che, se non cambi nulla, il valore dell'ingresso analogico va da 0 a 10000 quindi devi scalarlo...
powermoro Inserita: 9 maggio 2007 Autore Segnala Inserita: 9 maggio 2007 Grazie per aver risposto. Come l'hai scritta tu però significa che devo assegnare un valore di temperatura a una merker... come faccio a fare ciò? io sono abituato a utilizzare le merker per creare i cicli di lavorazione, non per assegnargli valori decimali di temperatura.... So che sono domande banali, ma è la prima volta che mi trovo ad avere a che fare con segnali analogici, vista la poca esperienza...
Claudio Monti Inserita: 10 maggio 2007 Segnala Inserita: 10 maggio 2007 Mi sa che c'e' un po' di confusione...La differenza sta tra BIT e WORD (o double, real, ecc...).I cosiddetti "merker" in genere sono "bobine" che possono assumere lo stato 0 o 1.Quando usi una WORD utilizzi, tutti insieme, 16 bit ognuno dei quali con un suo "peso" ed ottieni un valore decimale compreso tra -32678 e +32767.Se fai caso al mio codice non ho utilizzato la %M100 (bit) ma la %MW100 (word)...Vatti a rivedere un corso base sui PLC dove queste cose vengono trattate! Qualcosa trovi anche qui oppure su google...
powermoro Inserita: 10 maggio 2007 Autore Segnala Inserita: 10 maggio 2007 ma infatti quella che intendevo io non era una merker intesa come bobina, o memoria a un bit (%M10), ma una merker word... cioè esattamente quella che hai scritto tu nella risposta...
Claudio Monti Inserita: 11 maggio 2007 Segnala Inserita: 11 maggio 2007 La risposta alla tua domanda era gia' (parzialmente) inclusa nella mia prima risposta... dove facevo il confronto tra 2 grandezze dello stesso tipo (%IW con %MW, sono sempre WORD!!!).Puoi assegnare l'ingresso direttamente ad una %MW semplicemente scrivendo:%MW10:=%IW3.0
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora