In my site I have put a small example, if you want to try ... http://www.delphiruby.net/SNAP7%20e%20LibNoDave_ENG.htm
Hello everyone, for years I have been using a program that I wrote in Delphi to analyze the Siemens PLC variables in search of those failures that occur randomly, both for the 300/400, 1200 and 1500 series and a few months ago I thought to implement the "getcpuinfo" function so when I intervene remotely I do a further check that I am on the correct PLC as well as pointing to the IP and also reading the type. I have always used it with the 300 series because they are the majority of our PLCs without...
Scusa non avevo visto che c'erano degli screen shot, direi che i settaggi sono giusti, l'errore che ti torna però e "REFUSED" sei per caso in rete e passi attraverso degli switch gestiti? a me era successo che fosse la porta dello Switch a bloccarmi, io in quel caso riuscivo a pingare il PLC ma non potevo accederci, poi l'amministratore di rete mi ha dato i permessi e tutto ha funzionato Una cosa, vedo che il PLC ha indirizzo 1 e nel debug il setting è da 2 a 102 non è che per caso deve partire da...
La CP 343-1 Lean non richiede impostazioni e trattandosi di un PLC S7 300 non ci sono settaggi da fare, devi solo stare attento a settare il telaio di montaggio e il posto connettore in modo corretto. Normalmente per un PLC S7 300 il telaio è 0 e il posto connettore è 2, poi dipende da come hai settato l'hardware del PLC
After the connection with a CPU 1200 instead of returning to me ERROR = "0" it returns me "12582912" but I cannot understand what kind of error it is, is there a list of errors? Thanks 1000 Dopo il collegamento con un CPU 1200 invece di ritornarmi ERRORE = “0” mi ritorna “12582912“ ma non riesco a capire che tipo di errore sia, esiste una lista degli errori? Grazie 1000
Buongiorno a tutti, da anni utilizzo un programma che ho scritto in Delphi per analizzare le variabili dei PLC Siemens alla ricerca di quei guasti che si si presentano in modo random, sia per serie 300/400 che 1200 e 1500 e qualche mese fà ho pensato di implementare la funzione “getcpuinfo” cosi quando intervengo da remoto faccio un’ulteriore verifica di essere sul PLC corretto oltre che puntando all’IP leggendo anche il tipo . L’ho sempre utilizzato con la serie 300 perché sono la maggioranza dei...
Buongiorno a tutti, da anni utilizzo un programma che ho scritto i Delphi per analizzare le variabili dei PLC Siemens alla ricerca di quei guasti che si si presentano in modo random, sia per serie 300/400 che 1200 e 1500 e qualche mese fà ho pensato di implementare la funzione “getcpuinfo” cosi quando intervengo da remoto faccio un’ulteriore verifica di essere sul PLC corretto oltre che puntando all’IP leggendo anche il tipo . L’ho sempre utilizzato con la serie 300 perché sono la maggioranza dei...
Chiedo umilemnte scusa, a volte ed essere troppo sicuri di se stessi in un argomento porta a fare degli errori che nemmeno un ragazzino alle prime armi con il PLC commetterebbe, non avevo applicato la spunta nei meccanismi di collegamento Ora funziona tutto perfettamente. Sig.Nardella grazie per la disponibilità
Il progetto lo faccio dalla partenza con DB Globale, DB non ottimizzata e pernmesso sia in lettura che in scrittura, comunque la DB ho provato anche a ricaricata, ho anche rifatto un nuovo progetto dopo gli aggiornamenti del firmware, ho fatto un nuovo progetto anche solo per testare un Boolean (i booleani so che vanno perchè su una CPU 1500 spazzolo 2 DB contenenti tutti gli allarmi di un grosso progetto ) ma anche li dopo aver interrogato la DB mi arriva il messaggio "CLI : function refused by...
So che si tratta di un argomento già discusso nel Web, ma ho la necessità di leggere tre numeri interi ( da 0 a 255) su un PLC 1200 1212, ma mi ritorna sempre il messaggio : CLI : function refused by CPU (Unknown error) Ho provaro a cambiare firmware alla CPU pensado che fosse vecchio, ma nulla, ho preso una CPU più recente ma torna sempre lo stesso errore. La DB non è ottimizzata, è una DB Globale e ha le prorpietà di Protezione e Security con permesso di lettura e scrittura. ALLEGO CODICE CHE UTILIZZO...
Prova questo procedure TForm1.FormCreate(Sender: TObject); begin PLC:=TS7Client.Create; PLC.ConnectTo('172.31.225.10',0,1); // indirizzo PLC 1500 end; procedure TForm1.FormDestroy(Sender: TObject); begin PLC.Destroy; end; procedure TForm1.Button1Click(Sender: TObject); var errore, I: Integer; MyBYTE: Boolean; // max 1 byte CilcoBYTE,ContaByteS : Integer; Ruby : String; begin ContaByteS := 0; if not PLC.Connected then // se il PLC non risponde esco begin showmessage('PLC NON RISPONDE VERIFICA INDIRIZZO...