guidoplc Inserito: 19 febbraio 2016 Segnala Inserito: 19 febbraio 2016 Sto provando il collegamento tra pc e plc, con PlcSim per S7 1200. Per le prove sto usando il file client.cpp.Per quanto riguarda la lettura dei DB;MB;AB e EB non ci sono problemi. Per la scrittura invece non riesco a settare per esempio il MB[0] bit 0. Ho modificato il file client aggiungendo del codice nel seguente modo: void MultiWrite() { byte MB[2]; TS7DataItem Items[5]; // NOTE : *AMOUNT IS NOT SIZE* , it's the number of items // Merkers Items[0].Area =S7AreaMK; Items[0].WordLen =S7WLByte; Items[0].DBNumber =0; // Don't need DB Items[0].Start =0; // Starting from 0 Items[0].Amount =1; // 16 Items (bytes) Items[0].pdata =&MB; //int res=Client->MBWrite(1,1,&MB); int res=Client->WriteMultiVars(&Items[0],1); if (Check(res,"Write MB 1")) { MB[1] = 0x01; printf("MB0:%x\n",&MB); printf("Dump MB0..MB1 - Var Result : %d\n",Items[0].Result); if (Items[0].Result==0) hexdump(&MB,2); } Ma questo non funziona. Grazie per eventuali risposte. Saluti Guido.
guidoplc Inserita: 19 febbraio 2016 Autore Segnala Inserita: 19 febbraio 2016 Chiedo scusa. Non ho specificato che sto usando la libreria Snap 7. Di nuovo saluti Guido
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