Jump to content
PLC Forum


picluigi

Zen PLC che fa impazzire.

Recommended Posts

picluigi

Descrivo questa mia esperienza con il PLC Zen V1 che spero possa interessare qualche lettore di questo forum.

Dieci anni fa ho acquistato un PLC Zen V1 (e relativo cavo di collegamento RS232)  per automatizzare il cancello carraio di casa mia.

L'ho programmato con Zen Support Software V3 per mezzo di un portatile (SO Win2000) munito di porta seriale  RS232.

L'altro ieri , a seguito della sostituzione del cancello , mi è nata l'esigenza di modificare la configurazione di un timer implementato nel codice allora creato.

Non disponendo del vecchio portatile, da anni ormai rottamato, ne ho usato uno più recente che però non ha la porta RS232. Ha solo porte USB.

Per il collegamento PC-PLC ho acquistato in rete un cavo adattatore USB-RS232, per pochi euro.

Il portatile che ha *** (l'azienda ha richiesto la rimozione di questo marchio su PLC Forum) (ma ho provato anche con W7) non è riuscito in alcun modo a connettersi con lo Zen. Ho fatto mille prove ma niente da fare.

Ho fatto un'ultima disperata prova.

Ho riesumato  un vecchio PC da tavolo con SO Win Xp e porta RS232 implementata su scheda madre.

Con questo PC, il collegamento allo Zen è avvenuto immediatamente.

Perchè?

Perchè il portatile + cavo adattatore RS232, creava una COM3.

Il vecchio PC da tavolo ha creato, invece, una classica COM1.

Credo che lo Zen abbia al proprio interno un firmware progettato solo ed esclusivamente per collegamenti con  COM1.

Se un dispositivo esterno (leggi PC) si interfaccia a lui con una COM diversa da COM1  la rifiuta a prescindere dai settaggi tipo Baud Rate ecc.

Un amico che possiede un PLC Omron tipo CPM1 mi raccontava che riesce a collegarsi con qualsiasi portatile + cavo adattatore RS232, indipendentemente dalla porta COM a disposizione.

Da ciò ho dedotto che lo Zen ha un indirizzo COM statico, quindi unico, cioè COM1.

Mentre il PCM1 ha un indirizzo COM dinamico che si adatta a qualunque COM si trovi di fronte.

Un saluto a tutti.

 

 

 

 

 

 

 

 

 

Link to comment
Share on other sites


Ctec

La porta RS232 di un dispositivo non ha indirizzo (connessione punto a punto) e non riconosce (né può farlo) il numero di porta del sistema operativo che lo sta contattando.

Il numero di COM serve al computer per distinguere quale sia la porta fisica da usare.

I vecchi PC avevano la possibilità di avere solo due COM (la 1 e la 2). Quindi è probabile (non lo rammento non uso più lo ZEN da un sacco) che il software dello ZEN avesse come impostazione una o entrambe di queste e non altre.

Almeno da XP in poi, è possibile cambiare il numero della porta COM generata da adattatori USB (basta andare in Gestione Dispositivi) in modo da far funzionare vecchi software.

Ci sono comunque dei driver e degli adattatori USB-COM che hanno dei problemi a connettersi con software vecchi.

In tali casi ho spesso risolto (se si trovano i driver) creando una macchina virtuale con un vecchio SO e poi installando in questa sia l'adattatore che il software di comunicazione.

Un esempio. Se si installa lo Step7-MicroWIN (per S7-200) su un Windows8 o 10 e si vuole usare un vecchio cavo PPI con RS232 e adattatore, non ci riuscirete (io almeno con tre portatili diversi non ho avuto chance), ma se sullo stesso PC ho messo una macchina virtuale con Win7, con questo e gli stessi cavetti sono riuscito a connettermi.

Link to comment
Share on other sites

picluigi

Ctec, ti ringrazio per la risposta.

Da quanto hai scritto mi viene spontaneo chiederti quale differenza ci sia, a livello Sw, tra una COM1 e una COM2 o 3.

Secondo me la differenza sta nel fatto che alla COM1 corrisponde un certo indirizzo  mentre alla COM2 ne corrisponde un altro.

Prova ne sia che al primo tentativo di collegamento tra il mio portatile (moderno) + cavo adattatore USB-RS232, il SW Zen Support Software "vedeva" che in detto portatile era presente la COM3. E chiedeve di confermarla. Cosa che ho fatto puntulamente. ma , come detto, nonostante ciò il collegamento non è avvenuto.

Poi, utilizzando Virtual Box ho creato anch'io una macchina virtuale con SO Win Xp . E con lo stesso adattatore USB-RS232 la macchina virtuale dava stavolta una COM5 che  nonostante l'avessi confermata attraverso Zen Support Software, il collegamento non è avvenuto.

Ho provato a modificare il numero della porta COM5 per farla diventare COM1 ma questa COM1 era già "in uso". Da chi, io sinceramente non lo sò.

Allora sono andato in soffitta, ho riesumato il vecchio PC da tavolo dismesso da anni e con questo ho risolto il problema. L'ho risolto perchè, come detto, la RS232 fisicamente disponibile era di tipo COM1. Ho provato a cambiarla in COM2 ma così niente collegamento.

Ecco perchè mi sento di dire che i numeri che contraddistinguono le varie COM sono nient'altro che degli indirizzi.

Link to comment
Share on other sites

batta
13 ore fa, picluigi ha scritto:

Da quanto hai scritto mi viene spontaneo chiederti quale differenza ci sia, a livello Sw, tra una COM1 e una COM2 o 3.

La questione non è nelle differenze tra COM1, COM2 e COM3, ma nel fatto che, un tempo, i PC disponevano quasi sempre di due sole seriali, appunto COM1 e COM2. Di conseguenza, molti software, nelle impostazioni, permettevano di scegliere solo tra COM1 e COM2.
Se il problema è questo, come già detto da Ctec, andando nella gestione dei dispositivi puoi far vedere al sistema l'adattatore USB come COM1.
Ma non è garantito che il problema sia solo questo, a volte anche i driver degli adattatori non vengono ben digeriti dai vecchi programmi (o i deiver degli adattatori non digeriscono bene i vecchi programmi).
Ti faccio un esempio: vecchi PLC Siemens S5. Riesco a comunicare anche con Win 10, ma solo con un particolare adattatore USB, piuttosto datato. Con tutti i nuovi adattatori USB, non comunico.

 

Quote

Ho provato a modificare il numero della porta COM5 per farla diventare COM1 ma questa COM1 era già "in uso"

Se nei dispositivi è già presente una COM1, prima devi spostare la COM1 su una libera, e solo dopo potrai spostare la COM5 su COM1.

Edited by batta
Link to comment
Share on other sites

Ctec

Spesso sulle macchine virtuali la COM1 è impegnata da lui stesso, ma se si riassegna a COM1 anche un altro dispositivo, non ci sono problemi, finché non cercano di accedere entrambi alla stessa COM.

Dall'esterno, tutte le COM sono identiche. Dal lato SO cambiano (ovviamente) nel senso che una porta fisica deve corrispondere a una COM logica (quella vista dai software).

Non hanno un vero e proprio indirizzo, sono gestire dal sistema operativo. Tutte le volte che un applicativo cerca di scrivere o vuole leggere da una porta COM, il SO reindirizza le chiamate alla porta fisica da questa referenziata.

Il problema di Batta con adattatori vecchi e/o sistemi operativi vecchi è molto sentito da parecchi dispositivi.

Non butto infatti mai vecchi adattatori che potrebbero risultare utili per interventi su roba datata.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



×
×
  • Create New...