Vai al contenuto

Sergio Bertana

Risposte nei forum create

Stai visualizzando 15 post - dal 2,716 a 2,730 (di 4,424 totali)
  • Autore
    Post
  • in risposta a: Differenze tra moduli CPU e moduli OEMs #38732
    Sergio Bertana
    Amministratore del forum

    Le versioni B sono hardware non compatibili con le versioni D. Le versioni B supportano tutte le releases del software SFW167**00, mentre le versioni D supportano tutte le releases del software SFW184**00. Le differenze di caratteristiche hardware tra le due versioni e indicata con la nota (5) nella tabella delle caratteristiche sulla pagina prodotto.

    Questi prodotti OEM non sono da noi gestiti a magazzino per evitare immobilizzi di schede che normalmente utilizziamo nella produzione del prodotto finito. Ma proprio perchè li utilizziamo nel prodotto finito sono sempre disponibili e quindi siamo in grado di evadere l’ordine in tempi molto brevi (Se clicchi sul simbolo di disponibilità vedrai che indichiamo cautelativamente 1 settimana).

    Le versioni CAN e RS485 sono due hardware diversi, cambia il driver di comunicazione, il sistema operativo riconosce il tipo di configurazione ed abilita la sola funzionalità della versione installata.

    in risposta a: Connessione SlimLine in modalità Client TCP/IP #38730
    Sergio Bertana
    Amministratore del forum

    Aggiungo che se la marcatrice supporta il Modbus TCP basterà impostare il convertitore Ethernet-Seriale per connettersi alla porta 502 (La standard di Modbus) della marcatrice. Nel tuo programma utilizzando il FB ModbusMaster passando il FILEP della porta COM conessa al convertitore potrai gestire lo scambio dati in Modbus.

    in risposta a: Connessione SlimLine in modalità Client TCP/IP #38729
    Sergio Bertana
    Amministratore del forum

    La tua domanda permette di allacciarmi ad argomenti già trattati nel forum e quindi ne approfitto per un riepilogo, la porta Ethernet dello SlimLine è autosensing (Topic) quindi puoi usare sia cavi diritti che cross per la connessione, il Ping è trattato in questo topic.

    Per quanto riguarda la possibilità di aprire una connessione TCP/IP in modalità Client sugli SlimLine LogicLab è attualmente un lavoro in progress, mentre questa possibilità è disponibile sugli SlimLine CODESYS. Esistono due possibilità per aggirare il problema.

    Connessione UDP
    Se la marcatrice accetta connessioni UDP è possibile dialogare in UDP con la macchina, con il protocollo UDP non vi sono limitazioni puoi ricevere ed inviare pacchetti UDP con le funzioni SysUDPSktRcv e SysUDPSktSend (Topic).

    Connessione TCP/IP Client con convertitore
    Per connetterti in TCP/IP in modalità client puoi utilizzare un convertitore Ethernet-Seriale (Esempio ATC-1000) connesso ad una porta seriale COM dello SlimLine. Il convertitore andrà impostato come Client e dovrai definire l’indirizzo IP e la porta del server a cui connettersi (Nel tuo caso la macchina marcatrice). Il convertitore cercherà di aprire e mantenere attiva una connessione con il server e tu potrai in questo modo inviare e ricevere i dati dalla porta COM. Un utilizzo di questa tecnica è in questo topic.

    in risposta a: Esportare dati sul web da SlimLine (Usando Php) #38728
    Sergio Bertana
    Amministratore del forum

    Per soluzionare il problema proposto consiglio di dare una occhiata e questa nuova FB (Topic).

    in risposta a: Nuovo blocco funzione per richiesta pagina da Web server #38727
    Sergio Bertana
    Amministratore del forum

    Per testare il FB ho postato su un account gratuito presso Altervista uno script PHP Example.php che esegue la divisione tra due valori, è possibile richiamare lo script da un programma SlimLine passando i due valori e ricevendo nella pagina ritornata il risultato. Ecco il sorgente dello script.

    echo “The result is: “.$_REQUEST[“Dividend”]/$_REQUEST[“Divisor”];

    Il programma di esempio (Stampa), su di un sistema SlimLine, esegue la richiesta della pagina ogni 5 secondi passando i valori di Dividend e Divisor e ricevendo il risultato. Come si vede dallo screenshot passando i valori allo script viene eseguito il calcolo e ritornato il risultato. In HTTPStatus è ritornata l’intestazione inviata dal server, nel caso di errori sarà presente il codice di errore. Da debug è possibile variare i valori e verificare il risultato di ritorno (Download programma).

    in risposta a: Utilizzare il Manufacturer ID per proteggere il programma #37471
    Sergio Bertana
    Amministratore del forum

    Aggiungo l’ultima risposta, LogicLab permette la scrittura di funzioni e blocchi funzioni (In tutti e 5 i linguaggi della IEC61131) che poi possono essere utilizzati come oggetti nei programmi (Topic).

    E’ possibile criptare le funzioni e i FB, e distribuirli all’interno di librerie proprio come facciamo noi con le librerie a corredo della installazione di LogicLab (Topic).

    in risposta a: Utilizzare il Manufacturer ID per proteggere il programma #38726
    Sergio Bertana
    Amministratore del forum

    Utilizzare il MID per sproteggere FB
    Acquistando il MID, vi verrà fornita una password per ognuno dei FB di cui il MID prevede lo sblocco, nel vostro progetto allo startup con la funzione SysPCodeAccept (O da pagina web) dovrete inserire le password di slocco. Così il programnma potrà utilizzare i FB su tutti i dispositivi provvisti di MID.

    Utilizzare il MID per proteggere il proprio programma
    I programmi, le funzioni e/o i FB che costituiscono la “parte nobile” del progetto al loro interno eseguono il controllo se valore della variabile SysMfcCode è uguale al MID acquistato. Se il controllo non passa si può decidere di non eseguire e/o eseguire per un certo tempo le operazioni. Questi oggetti vengono poi criptati con l’opzione Crypt di LogicLab (Screenshot).

    Questo permette dare al cliente finale il progetto permettendo una facile gestione degli upgrades, il cliente potrà anche intervenire autonomamente sul suo programma per le parti che non sono state protette. Quello che interessa al progettista è salvaguardare le “parti nobili” dove risiede il know-how e dove probabilmente ha speso il maggior tempo nello sviluppo.

    L’abbinamento criptatura e MID garantisce che il Vostro cliente finale pur disponendo dei sorgenti debba necessariamente acquistare da voi il prodotto su cui eseguire il programma perchè Elsist venderà solo a voi il prodotto con il vostro MID. Ecco quindi che se la Vostra fornitura prevede il pagamento di royalties il cliente finale non potrà trovare alcun escamotage per aggirarne il pagamento.

    in risposta a: Utilizzare il Manufacturer ID per proteggere il programma #38725
    Sergio Bertana
    Amministratore del forum

    Il Manufacturer ID (MID) è la soluzione che proponiamo come unica sicura per la protezione della proprietà intellettuale del software, richiedendo un intervento di programmazione del prodotto da parte nostra ha dei costi (Vedi articolo). Esistono anche metodi meno efficaci che possono essere messi in pratica senza costi dall’utente (Topic). Ora veniamo alle domande.

    Il MID ha un costo una tantum, nel momento in cui lo si richiede si indicano i prodotti in cui verrà utilizzato e noi forniremo una eMail con le passwords (Ogni codice prodotto ha un suo codice da 20 caratteri) da inserire nel programma per testarlo con la funzione SysPCodeAccept (Estratto manuale). L’attivazione del MID sul prodotto ha un costo applicato ad ogni prodotto acquistato.

    Se si decide di utilizzare lo stesso MID per altri prodotti basterà richiederlo, e se applicabile, invieremo la eMail con la password di attivazione per il codice di prodotto richiesto senza ulteriori costi.

    in risposta a: Programma demo modbus TCP/IP slave #38724
    Sergio Bertana
    Amministratore del forum

    Certo che è possibile, naturalmente dovrai agire sulle stesse variabili da entrambe le istanze Modbus, in pratica da Mobus RTU la tua schedina scrive/legge le stesse variabili che sono scritte/lette da Modbus TCP/IP.

    Se prendiamo ad esempio la variabile UINT DB 100.16 (Address Modbus 40008) potrai scrivere il valore da Modbus RTU e leggerlo da Modbus TCP/IP e viceversa.

    Se la tua schedina può operare come slave Modbus RTU puoi anche utilizzare l’FB ModbusTCPGateway (Topic) per accedervi da Modbus TCP/IP.

    in risposta a: Aggiornamento automatico pagine web con AJAX #38722
    Sergio Bertana
    Amministratore del forum

    Ho provato a verificare il funzionamento dell’esempio con Google Chrome e funziona correttamente. Il punto che tu indichi AJAXSendRequest(b) è una funzione javascript di richiesta pagina HTM (La pagina richiesta è quella indicata nella chiamata).

    La funzione viene eseguita automaticamente ogni 3 secondi body onLoad=”setInterval(‘AJAXSendRequest(‘Values.htm’)’, 3000)”, e come vedi viene richiesta la pagina Values.htm che deve essere nella stessa cartella della pagina AjaxPage.htm.

    Tu hai trasferito nella cartella Storage entrambe le pagine HTM ?

    AJAX non è altro che una tecnica di richiesta pagine al server HTTP (Tramite la funzione AJAXSendRequest) che si comporta come un browser, alla ricezione della pagina viene eseguita la funzione SetupValues a cui è passato il contenuto della pagina richiesta PContent.

    La pagina Values.htm contiene Tags che saranno valorizzare con i valori, se tu provi ad aprire la pagina Values.htm da un browser riceverai i 3 valori separati dal simbolo “|”.

    in risposta a: Utilizzo porte seriali in modalità Full-Duplex #38720
    Sergio Bertana
    Amministratore del forum

    L’ambiente CODESYS ha sicuramente dalla sua il fatto di essere utilizzato da diversi costruttori di PLC e quindi dispone di maggiori fonti di informazioni. L’ambiente LogicLab pur avendo come ambiente di sviluppo nulla da invidiare al CODESYS 2 (Anzi per alcune cose lo preferisco) è presente su PLC e drivers di alcuni costruttori che a differenza di CODESYS non ne enfatizzano l’utilizzo.

    Ecco quindi il nostro maggiore sforzo documentativo su questo ambiente che offre buone possibilità ma dove le fonti di informazioni sono molto ridotte. Tra le altre cose ricordo che LogicLab importa i files scritti in ST di CODESYS (Topic).

    Ad oggi CODESYS ha dalla sua la possibilità di operare anche come client TCP cosa che nei sistemi programmabili da LogicLab è ancora in fase di sviluppo. Mentre non ci sono problemi ad operare come server TCP.

    Altro vantaggio di CODESYS è la disponibilità del WebVisu (Topic), su LogicLab abbiamo le pagine web dinamiche (Topic).

    in risposta a: Utilizzo porte seriali in modalità Full-Duplex #38718
    Sergio Bertana
    Amministratore del forum

    Certo che è possibile gestire le comunicazioni seriali nel modo che più ti aggrada, dopo avere aperto la porta con la funzione Sysfopen disponi di un file pointer che puoi utilizzare nelle funzioni:

    Sysfgetc, get character from file,
    Sysfputc, put character to file,
    Sysfread, read data from file,
    Sysfwrite, write data to file,
    Ecc…

    Il problema è il Modbus TCP che sulla CPU CODESYS non è nativo ma devi cotruirti e/o cercare su Internet un gestore. Se invece utilizzi la versione SlimLine per LogicLab hai le stesse identiche funzioni ed in più hai anche disponibile il supporto di 3 server Modbus TCP.

    Per la versione LogicLab puoi trovare nel forum molti esempi applicativi, semplice programma echo, sambio dati seriale/UDP, semplice convertitore Ethernet/Seriale. Ma usando il search nel forum troverai molti altri esempi in codice sorgente. Tutti gli esempi per LogicLab possono comunque essere adattati all’ambiente CODESYS.

    in risposta a: How to connect electrical power meter to a LAN #38717
    Sergio Bertana
    Amministratore del forum

    The answer is in the previous posts if you use the Virtual COM you can use any Ethernet to serial converter (ATC-1000 is the cheapest). For Wireless communication if you use the WiFi you can use any WiFi to serial converter, with a Virtual COM (I suggest the ATC-1000WF).

    in risposta a: Eseguire Ping di un indirizzo IP per testare comunicazione #38714
    Sergio Bertana
    Amministratore del forum

    Molte volte per ripristinare il funzionamento di un sistema non presidiato, ove possibile, viene eseguito un reboot dell’intero sistema SlimLine che se tramite le sue uscite logiche alimenta i dispositivi di connessione di rete (Switches, Routers, Access point WiFi , ecc) può gestire anche lo spenimento e la riaccensione degli stessi.

    Questa funzione definita Ping reboot, garantisce tramite lo spegnimento e la riaccensione di tutti i dispositivi di ripristinare il funzionamento nel caso di blocchi accidentali. Anche se il sistema SlimLine è già di per se controllato dal suo circuito di Watchdog integrato.

    Come si vede dalla stampa del programma nel caso di più di 3 errori di Ping consecutivi viene incrementato un contatore di reboot NrOfRestarts (Variabile allocata in DB 100.2048 che è una zona RETAIN). Dopo 1 secondo dall’incremento della variabile viene eseguito un loop WHILE infinito che fà intervenire il circuito di Watchdog che resetta in modo hardware il sistema disattivando tutte le uscite (Topic). Il sistema poi riparte in modo autonomo (Non ci deve essere LogicLab connesso).

    La pausa di 1 secondo è stata inserita per dare tempo al sistema operativo di salvare l’area RETAIN in modo da avere NrOfRestarts salvato (Download programma sorgente).

    in risposta a: How to connect electrical power meter to a LAN #38713
    Sergio Bertana
    Amministratore del forum

    Just a remark for people who has experience in PLC programming at a paragonable cost to the Ethernet to serial converter it’s possible to use our SlimLine ARM7 Compact Ethernet with the DataStreamExch (Manual abstract) (See topic with source program), or ModbusTCPGateway (Manual abstract) (See topic with source program) FBs it’s possible to have both the type of converters.

Stai visualizzando 15 post - dal 2,716 a 2,730 (di 4,424 totali)