dan64100 Inserito: 23 maggio 2014 Segnala Share Inserito: 23 maggio 2014 (modificato) Ciao, ho cominciato a dare un'occhiata al protocollo nativo di comunicazione del Logo 0BA7 ed ho scritto una piccola applicazione di test che trovate nel repository: http://www.plcforum.it/f/files/category/44-dispositivi-di-programmazione-comunicazione-e-cavi/ Il protocollo nativo è quello usato da LOGO!Soft Comfort per gestire il PLC, a differenza di S7Protocol, che prevede solo il trasferimento dell'area V, permette il controllo completo della CPU. La connessione avviene sulla porta 10001 e non è necessario configurare le connessioni ethernet nel PLC, quindi nemmeno i TSAP, basta conoscere l'indirizzo IP del Logo. Prima di premere i bottoncini leggete attentamente quanto segue, ci sono altre applicazioni con protocollo nativo tipo LOGO!App della Siemens ma non permettono lo stesso livello di controllo, quindi come diceva lo zio dell'uomo ragno: da un grande potere derivano grandi responsabilità, ovvero, non sono affatto sicuro di cosa succede andando a sovrascrivere aree di memoria "recondite". Le idee che mi sono fatto analizzando il protocollo e le classi di gestione di Soft Comfort (e aspetto le vostre) sono: S7 Protocol è un protocollo nativo per la serie 300/400 ... ma queste CPU hanno un firmware molto sofisticato ed un controllo capillare sul protocollo : non esiste accesso diretto alla memoria, anche la scrittura delle aree di sistema passa attraverso le DB e viene validata. Ogni blocco programma passa dalla memoria di caricamento e viene controllato dal firmware prima di essere linkato. Il Logo è poco più di un microprocessore con RAM e ROM, Logo Comfort scrive il programma direttamente nella memoria della CPU, il firmware è minimale, e allo stesso modo tutti i settaggi non avvengono chiamando funzioni di sistema ma andando direttamente a modificare la memoria. Non conosco assolutamente la mappa di memoria del Logo, alcune aree sembrano R/W altre di sola lettura. Esistono due modi per accedere alla memoria (perchè credo che ne esistano due tipi diversi) tramite lettura/scrittura a bocchi e tramite lettura/scrittura di "internal bytes", mettendo gli stessi indirizzi danno risultati diversi. Se vi divertite ad esplorarla troverete praticamente tutto : i LOG la diagnostica la SD card, il display ecc.. Le letture/scritture a blocchi, le scritture degli internal bytes e tutte le altre operazioni di sistema possono essere fatti solo con la CPU in stop, la lettura degli internal bytes può essere fatta anche con la CPU in run. La lettura delle risorse "di automazione" (immagine degli ingressi, uscite, analogica, flags, ecc..) viene fatta con un telegramma dedicato (fortunatamente) e lo trovate nella prima pagina dell'APP insieme alla lettura del firmware e dell'hardware ID. Nella seconda pagina trovate il controllo della CPU run/stop ecc. Infine nella terza pagina c'è l'accesso completo alla memoria. Non è dato di sapere il PDU size (max quantità di dati da scambiare in un telegramma) per i trasferimenti a blocchi, sembra che accetti tutto. Io sono stato conservativo ed ho usato quelli di Comfort: 512 bytes in lettura e 48 in scrittura, ovviamente voi potete trasferire quanto volete, lo "spezzettamento" viene fatto internamente dalla libreria . A volte vedrete il sistema bloccarsi per qualche decondo : è normale , capita anche con Logo Comfort, il protocollo prevede 3 ritrasmissioni in caso di "disinteresse" da parte della CPU, come struttura è derivato da quello RS232, c'è ancora qualche calcolo di checksum sparso in giro. Comunque stò ancora analizzando il tutto. Rimane qualche telegramma di sistema da implementare, lo farò col tempo.... Fatemi sapere Davide Modificato: 26 maggio 2014 da Giuseppe Signorella Link al commento Condividi su altri siti More sharing options...
bigalex Inserita: 24 maggio 2014 Segnala Share Inserita: 24 maggio 2014 Ciao Davide . Non ho un interesse particolare a questo argomento (al momento) ma sto seguendo con interesse il tuo splendido lavoro (Snap7) e la professionalità e competenza che metti a disposizione di tutti. Posso solo dirti ..... grazie ! bigalex Link al commento Condividi su altri siti More sharing options...
drugo66 Inserita: 24 maggio 2014 Segnala Share Inserita: 24 maggio 2014 Mi accodo ai ringranziamenti a Davide. Grazie anche da parte mia Link al commento Condividi su altri siti More sharing options...
Giuseppe Signorella Inserita: 25 maggio 2014 Segnala Share Inserita: 25 maggio 2014 Anche io mi complimento con l'eccellente lavoro svolto, (impeccabile come al solito) e per averlo condiviso con noi. Tempo permettendo in questa settimana farò qualche test. N.B. Davide, ti ho inviato un M.P. Ma forse hai la casella satura di messaggi. Ciao Link al commento Condividi su altri siti More sharing options...
dan64100 Inserita: 26 maggio 2014 Autore Segnala Share Inserita: 26 maggio 2014 Grazie ragazzi per gli apprezzamenti Link al commento Condividi su altri siti More sharing options...
maxbike Inserita: 3 giugno 2014 Segnala Share Inserita: 3 giugno 2014 Ciao Davide, ho cominciato a seguire con attenzione i tuoi sviluppi al protocollo nativo di comunicazione del Logo 0BA7 e mi accodo agli altri con piacere nel rigraziarti per la tua passione e per la tua disponibiltà alla condivisione delle tue scoperte. grazie saluti massimo Link al commento Condividi su altri siti More sharing options...
NoNickName Inserita: 4 giugno 2014 Segnala Share Inserita: 4 giugno 2014 Link al commento Condividi su altri siti More sharing options...
panchoo75 Inserita: 9 giugno 2015 Segnala Share Inserita: 9 giugno 2015 complimenti...mi piacerebbe capire e studiarci su...magari un mini corso Link al commento Condividi su altri siti More sharing options...
paolo.b Inserita: 16 maggio 2016 Segnala Share Inserita: 16 maggio 2016 Ho provato il programma su LOGO 0BA8 con pc e Windows8 ma non funziona. Sto sbagliando qualcosa? Link al commento Condividi su altri siti More sharing options...
Livio Orsini Inserita: 16 maggio 2016 Segnala Share Inserita: 16 maggio 2016 Discussione ferma da quasi un anno, inoltre è vietato accodarsi per evitare confusione nelle risposte. Se vuoi apri una nuova discussione. Link al commento Condividi su altri siti More sharing options...
Messaggi consigliati