Vai al contenuto

Suggerimenti per iniziare la programmazione

Home Forum Programmazione IEC 61131 (LogicLab) Suggerimenti per iniziare la programmazione

Stai visualizzando 10 post - dal 1 a 10 (di 10 totali)
  • Autore
    Post
  • #35570
    Andrea
    Partecipante

    Salve a tutti, ho intenzione di acquistare un PLC, per precisione uno sSlimLine, prima di acquistarlo ho scaricato LogicLab per vedere un pò se mi adattavo a questa nuova interfaccia, da qualche giorno faccio delle prove, ma senza risultato.

    Ho deciso di creare il programma in FBD, poichè con gli altri PLC che ho usato, mi trovavo meglio con questo tipo di programmazione. Per iniziare ho semplicemente preso un entrata digitale, l’ho connessa ad un not, e ho connesso un uscita su di una uscita digitale, con lo scopo di vedere, quando vado nella modalità di simulazione, i led dell’interfaccia grafica di sumulazione, accendersi, per avere un idea di come funziona, ma non ho avuto esito positivo. 

    Quando tento di compilare mi spuntano già due errori riportanti rispettivamente il nome dell’input e dell’output e poi l’errore Missing index(es), cosa ho sbagliato ?

    #38245
    Sergio Bertana
    Amministratore del forum

    Una ottima idea quella di scaricare LogicLab e testarne il funzionamento in simulazione su PC il simulatore permette di testare il programma senza disporre dell’hardware fisico (SlimLine), in questo topic si parla di come simulare il programma Marcia/Arresto fornito come esempio con LogicLab. Ulteriori informazioni sulla programmazione in LogicLab le trovi sul forum con centinaia di esempi in codice sorgente, in questo topic ecco un semplice programma da cui iniziare.

    Ma veniamo al tuo problema, ho realizzato un programma come il tuo (Ecco lo screenshot). Come vedi occorre definire gli I/O assegnando loro un nome mnemonico ed abbinandoli agli I/O fisici del modulo CPU (Data block 255, Index relativo all’I/O desiderato). Si realizza il programma in uno dei 5 linguaggi della normativa (Esempio FBD) e lo si assegna ad una task di esecuzione.

    Poi si avvia il simulatore definendo un workspace, per quanto riguarda gli I/O del modulo CPU è già predisposto un pannello dedicato, altri pannelli possono essere realizzati a piacere. Si esegue il download del programma nel simulatore ed ecco che il programma verrà eseguito.

    Trascinando gli operandi nella finestra di watch è possibile eseguirne il debug in tempo reale. Allego il progetto per il download.

    #38246
    Andrea
    Partecipante

    Grazie per la risposta, mi metto subito a lavoro e vediamo cosa esce…. grazie ancora.

    #38249
    Andrea
    Partecipante

    Come immaginavo sbagliavo nella definizione delle variabili, cioè non le definivo proprio, prendevo direttamente l’input e l’output. Butto giù qualche programma e acquisto subito il modulo, un ultimo dubbio posso simulare in qualche modo l’encoder in modo da usare il blocco di gestione encoder ?

    #38250
    Sergio Bertana
    Amministratore del forum

    Il blocco funzione SysGetEncoder, get encoder input funziona solo sull’hardware reale in quanto viene gestito direttamente dalla PLD presente sul modulo di estensione I/O.

    Ma se vuoi puoi utilizzare il blocco funzione IOEncoder, incremental encoder over I/O che permette di gestire la quadratura dei fronti dei segnali A e B di un encoder direttamente connesso agli I/O. In questo modo puoi simularne il funzionamento anche sul simulatore. Ma è un pò scomodo muovere i due ingressi del simulatore come se fossero i due segnali dell’encoder.

    Ti consiglio di utilizzare una variabile UDINT che puoi gestire tutta da debug come se fosse in realtà la tua quota encoder in uscita dal blocco funzione di gestione.

    #38253
    Andrea
    Partecipante

    Esiste un manuale da dove vedere il funzionamento dei blocchi funzione e dei tipi di variabili ?

    #38254
    Andrea
    Partecipante

    L’ho già trovato… questi prodotti sembrano davvero perfetti… a questo punto W il made in Italy…

    #38255
    Sergio Bertana
    Amministratore del forum

    Riporto comunque indicazioni sull’help contestuale e sul manuale di programmazione. Installando LogicLab si dispone di un help contestuale, basta evidenziare l’oggetto desiderato ed agendo con il tasto F1 si aprirà un documento pdf posizionato contestualmente sull’oggetto (Screenshot).

    Il documento di help contestuale è il Manuale programmazione IEC61131-3 che è scaricabile anche dal nostro sito.

    #38393
    Damiano
    Partecipante

    Salve stavo dando uno sguardo hai vostri PLC SlimLine, CPU Compact Ethernet e stò studiando un po il prodotto. Ho scaricato i vari manuali e software di programmazione.

    Dando uno sguardo al software e manuali non riesco a capire una cosa che molto probabilmente sarà banalissima. correggetemi se sbaglio, gli indirizzi fisici degli ingressi e uscite che sono a bordo del modulo CPU sono nel blocco memoria 255. Quindi per gli ingressi rispettivamente dallo 0 al 5 vanno indirizzati in nel modo IX255.00 – IX255.05, mentre per le uscite QX255.00 – QX255.03. E gli ingressi/uscite analogiche ?

    #38394
    Sergio Bertana
    Amministratore del forum

    Per quanto riguarda gli I/O logici ha capito perfettamente. Come tutti i PLC e come richiesto dalla normativa gli I/O logici oprerano in immagine di processo, cioè sono acquisiti gli ingressi prima della esecuzione del loop di programma e sono gestite le uscite al termine (In questo modo gli I/O rimangono stabili per tutta l’esecuzione del loop di programma). Quindi il sistema operativo provvede a mapparli in DB di memoria, è stato scelto il DB 0 per il modulo di estensione 0, il DB 1 per il modulo 1 e così via. Così gli I/O del modulo CPU si è deciso di mapparli nella DB 255.

    Per quanto riguarda gli I/O analogici occorre fare riferimento ai blocchi funzione SysGetAnInp per la lettura degli ingressi (Trovi un esempio qui) e SysSetAnOut per la scrittura delle uscite (Trovi un esempio qui). Occorrerà indicare alla FB l’indirizzo del modulo (255 per il modulo CPU), il numero di canale, ed il tipo di acquisizione o di uscita.

Stai visualizzando 10 post - dal 1 a 10 (di 10 totali)
  • Devi essere connesso per rispondere a questo topic.