visual-devel Mailing List for visual
Status: Alpha
Brought to you by:
lettoz
You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(4) |
Aug
|
Sep
|
Oct
(5) |
Nov
(17) |
Dec
(3) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
|
Feb
(2) |
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
(2) |
Aug
|
Sep
(1) |
Oct
|
Nov
(1) |
Dec
|
2004 |
Jan
|
Feb
(6) |
Mar
|
Apr
(2) |
May
(6) |
Jun
(2) |
Jul
(2) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(1) |
Sep
|
Oct
|
Nov
|
Dec
|
From: Thomas H. <Tho...@we...> - 2005-08-30 09:52:32
|
Martti Ahvenj=E4rvi <mas...@tp...> schrieb am 30.08.05 11:21:33: >=20 > Quoting Thomas Hergenhahn <Tho...@we...>: >=20 > Hi, Thomas. > Linux we are using is now Redhat Enterprise Edition 4. We're trying to c= ompile > your newest visual with gcc 3.4.3. Actually we haven't tried to compile = it yet, > since we have some other problems. >=20 >=20 > We are having some weird problem when trying to compile VISUAL. Actually= the > configuration seems not to work. That INSTALL=5FPLC=5FLIBS script works fine= . Does it=3F Look where it does copy nodav.h to. Sorry, I don't know myself at= the moment. If it goes to usr/local/include, maybe it will not be found. Copy to /usr/include manually.=20 If it still doesn't work, copy to visual's directory also. If it still doesn't work, copy to drivers and plcdrivers subdirectory also= . Do not care too much for what ./configure says: Different from mysql, whet= her nodave.h is found or not does not affect the Makefiles. Whatever solves the problem for nodave.h you should do for openSRTP.h and = ADS.h also > Or > attleast it doesn't give any warnings. When we run the ./configre it say= s that > it can't find file nodave.h... Also we're having some problems with MYSQ= L, as > configure doesn't find something that it needs for the logger. We have M= YSQL > installed, and it is working. THE THING YOU NEED ARE mysql headers. You do NOT NEED THEM to run MySQL or= applications that use MySQL. YOU DO NEED them to COMPILE any application = that uses MySQL. Don't know about RedHat, but with SuSE they are in a pac= kage named mysql-devel. >=20 > In attached file is the output of our install process. We haven't run ma= ke at > all yet, because the ./configure isn't working. >=20 > -Martti- > ------------------------------------------------------ > Satakunnan ammattikorkeakoulu / Tekniikka Pori =20 > T=E4m=E4 posti l=E4hetetty WebMAIL-palvelun kautta =20 > http://www.tp.spt.fi/ =20 >=20 >=20 =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F Mit der Gruppen-SMS von WEB.DE FreeMail k=F6nnen Sie eine SMS an alle=20 Freunde gleichzeitig schicken: http://freemail.web.de/features/=3Fmc=3D021179 |
From: Thomas H. <Tho...@we...> - 2004-07-06 08:01:07
|
-----Urspr=FCngliche Nachricht (HTML) wurde als Anlage beigef=FCgt.----- Von: "Demeter Robert" <rde...@ma...> Gesendet: 05.07.04 20:24:18 An: "Thomas Hergenhahn" <Tho...@we...> Betreff: Re: plc controling and monitoring [av ok] Hi Robert, =20 >I attach a part from logfile where the saveSettings is undefined symbol!!= Why you don't include the shsaver.o >xobject file in main Makefile to vis= uald=5FxOBJECTS=3F=3F=20 I must look it up. I guess there has been an error when I splitted somethi= ng into separate files.=20 I do not test visuald very often. I always thought it is just a subset and= all it=B4s functions are tested testing visual. I was definitely wrong... =20 Thomas. <br><br><table cellpadding=3D"0" cellspacing=3D"0" border=3D"0"><tr><td bgcolor=3D= "#000000"><img src=3D"http://img.web.de/p.gif" width=3D"1" height=3D"1" border=3D"= 0" alt=3D"" /></td></tr><tr><td style=3D"font-family:verdana; font-size:12px; = line-height:17px;">Verschicken Sie romantische, coole und witzige Bilder p= er SMS! <br>Jetzt neu bei WEB.DE FreeMail: <A HREF=3D"http://free= mail.web.de/=3Fmc=3D021193"><B>http://freemail.web.de/=3Fmc=3D021193</B></A> = </td></tr></table> |
From: Thomas H. <Tho...@we...> - 2004-07-01 15:09:04
|
-----Urspr=FCngliche Nachricht (HTML) wurde als Anlage beigef=FCgt.----- Von: "Demeter Robert" <rde...@ma...> Gesendet: 01.07.04 15:29:27 An: "Thomas Hergenhahn" <Tho...@we...> Betreff: Re: plc controling and monitoring [av ok] =20 >public=20 >synchronized=20 >void getValTab() {=20 =20 > if (wasModified){ > System.out.println(get("savesettings","")); > > wasModified=3Dfalse; > > } =20 I do not see at the first glance what you did modify. The command "saveset= tings" causes the server to save the values of all cells modified into a f= ile n.set where n is the number of the spreadsheet. This is needed to save= setpoints modified by a user over restarts of VISUAL. If the applet "cras= hed" in this point, can the following suspection be true: The server has not the rights to write into the working directory or has n= ot the rights to overwrite n.set. If this would be the case, it may be tha= t the server thread is either halted or dies. I will check this situation.= If the server is only halted, you should see the widgets change from norma= l display to displaying "Host!" in white on red background telling "we can= not get a value from the host". A reload causes your browser to newly connect to the server=B4s accepter thr= ead which will spawn a new server child thread. If your widgets did not show the error message, this may be due to imprope= r using of threads in the JAVA applet. I will check this too. =20 >Now, it's works fine. I can read PLC inputs, outputs and markers, and i c= an write markers of PLC from web >interface. It's a great work. It is look= like one OPC server that cost more than 600$. Thank you. I also hope it is far less complicated than OPC. =20 >Do you have a PPI specification or protocol description=3F I use serial mon= itor, noDaveLib driver and other >tools to find out the protocol functions= . =20 No, I havn=B4t. AFAIK, you can get it from Siemens for money, but you have t= o sign some licence about it=B4s usage, excluding usage for open source proj= ects. =20 >Do you know another technology (methology) to interact with PLC from web = interface (another HMI tool) or >another free tool=3F=3F=20 I have JAVA classes to directly interact with the serial interface and PPI= -Adapter, but handling serial connections from JAVA is no fun. I do not co= nsider them ready right now. Serial connection is also not possible from a= n applet with the normal JAVA security settings. It is also nosensical to = deliver an applet to a client that is not itself directly connected to the= PLC. I also have JAVA classes to directly interact with the CPs 243 or 343/443 = over Ethernet. The drawbacks are: -The number of clients is very limited (4=3F).=20 - The PLC=B4s communication load increases with number of clients. - Other than Siemens Applets distributed with the -IT CPs, the connection = cannot be tunneled over HTTP, hence will not work over firewalls, if port = 102 is not explicitly allowed. Thomas <br><br><table cellpadding=3D"0" cellspacing=3D"0" border=3D"0"><tr><td bgcolor=3D= "#000000"><img src=3D"http://img.web.de/p.gif" width=3D"1" height=3D"1" border=3D"= 0" alt=3D"" /></td></tr><tr><td style=3D"font-family:verdana; font-size:12px; = line-height:17px;">WEB.DE Video-Mail - Sagen Sie mehr mit bewegten Bildern= <br>Informationen unter: <A HREF=3D"http://freemail.web.de/=3Fmc=3D0= 21199"><B>http://freemail.web.de/=3Fmc=3D021199</B></A> </td></tr><= /table> |
From: Thomas H. <Tho...@we...> - 2004-06-27 20:39:58
|
shs...@fh... schrieb am 27.06.04 18:46:47: >=20 > hi thomas, > thank you for the same. could also fix it, it was just a typedef problem= > and there was a little conflict. minor one. sorry for bothering u for > that. I tried to do it in a way that is compatible with next version of visual, = i.e. the defines are in mytypes.h > i tested the driver and the writes to the flagwords are functioning well= . > i was trying to read the output word but i did not get much time > yesterday. So may I assume the driver works ok=3F > please send me the perl code for updating the sheet so that i can also d= o > some work in that direction. As I said, I must do a little search for it. I=B4ve been very busy the last = days. > now there is a small observation regarding speed. > i am writing from from words 4 to 76 some values from 0 to 64K unsugned.= > so when i try to write to the PLC these values it takes a while to uploa= d > them. The way the driver does it is not optimized for writing: When reading, the whole block defined on a tfi line is transferred in a si= ngle packet. With write, a UDP packet is sent for each cell that has chang= ed value (all on first start). Normally, I think this is appropriate for a= SCADA system, it has to read ALL values from the PLC as it cannot know of= changes otherwise.=20 With write it knows. And it makes it possible to connect multiple instance= s to the same PLC, commanding a machine from multiple locations: Last chan= ge wins like when you have more than one switch for the light in your room= . In this case, the single instances of an hmi page should display values = read back from the PLC so they will be up to date when another station cha= nged something. In the start phase, when all cells are considered to be changed, the write= delay should be small compared to the time needed for the rest of the sta= rt up process. > what do u think could be the fastest way to write them to the PLC=3F=3F Write them in a single block. This would need an "optimizer" that detects = changes of consecutive cells that could be transmitted in a single packet.= It should be implemented in PLCdriver.cc which is commen code for all byt= e/word block oriented PLC drivers (in next version). I currently do not pl= an to implement such an optimizer, but as it is open source maybe somebody= else will=3F >=20 > actually i use cell A1 as a switch and then write the values from D1 to > D76 fro the flagwords and then send them to the PLC. > could u suggest anything. i can mail u the tfi and sht files later as i > cannot connect to the g=F6ppingen server from my home right now. >=20 > please let me know your suggestions. Let me have a copy of the debug output. If you really perceive a considera= ble delay for 76 UDP packets, it might be worth to benchmark VISUAL and th= e CPU. >=20 > ok i have a question for you. why do different processor architectures u= se > this little endian or big endian byte ordering. any specific reason to d= o > that. Taste and history... Wherever mankind had the possibility to choose from e= qually good alternatives, some went this and some went the other way... In the early days of machine code programming (without symbolic assembler = and automatic address calculation), it could have been a little bit easier= to expand the size off variables in little endian, as you could append mo= re bytes maintaining the address and references. On the other hand you wou= ld have had to foresee the extra space in the first place or you had to sh= ift subsequent addresses. Big endian, on the other hand, resembles the way we use to write numbers. > i had written a similar udp driver like urs but i could not get the byte= > ordering right and hence it worked for words with small values. i could > not load block of memory and the output from the pLC was always false. > could u say something abt this I tried to do it once and for all drivers in PLCdriver.cc. So you can use = big letters in the format string to denote big endian. I did not look to much at the code you sent me to tell you where the probl= em is. You may use a debugger or print out some byte sequences to find it = out. What sounds strange to me is: Because both, BECK PLC and Intel based PCs u= se little endian, you do not need a conversion at all. On the other hand a port of the BECK driver to power PC Linux (Motorola, b= ig endian) would. Thomas =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F Aufnehmen, abschicken, nah sein - So einfach ist=20 WEB.DE Video-Mail: http://freemail.web.de/=3Fmc=3D021200 |
From: Thomas H. <Tho...@we...> - 2004-06-03 23:23:32
|
"Arijit Bhattacharrya" <arb...@fh...> schrieb am 03.06.04 20:= 27:02: >=20 > Hi Thomas >=20 > I am a little bit confused about writing the configuration file > "s7mpi.tfi" file.=20 Ok, they are somewhat confusing... > Imagine that I have to write a bit to the memory area M > 101.0.=20 > I know how to write Dword or byte or float value.=20 Thi is good at least... > But I am not able > to understand how I can write or read bits into the PLC memory. It would= > be a great help if you can clarify the confusion. You cannot write single bits. You can chosse single bits to correspond to = Spreadsheed cells. You can change single bits, but not without writing th= e entire byte they belong to. In your case, The PLC driver will fetch MB101, change the bit and write ba= ck MB101. Be careful: reading and writing to PLCs is usually asynchronous = to their program execution. So if the PLC changes bit M 101.3 between the = read amd the write, the change will be undone by the driver. This may caus= e unpredictable behaviour of the PLC program. So it is a good idea to "reserve" bytes or greater areas entirely for the = data exchange with VISUAL. This is not a drawback of VISUAL but true for all SCADA/HMI systems known = to me and common practice. The above written is true for all PLC drivers and brands. I thought I did = already explain it on VISUAL wep site. The Siemens S7 protocol in particular provides a possibility to manipulate= single bits which is not supported by VISUALs PLC drivers. I do not think= it is a good idea to support it because: 1. The communication is not very "economic", exchanging some 10 (30 to 50)= bytes to set a single bit. 2. A goal of VISUAL is to make it possible to simply exchange e.g. a Sieme= ns driver by it=B4s Allen Bradley counterpart, simplifying things to machine= manufacturers to reuse the same HMI for different customers and markets. = The use of brand specific specialties would brake this concept. > > had told shuja, we would be working on sending UDP packets to the ethern= et > interface of PLC. Should prefer TCP packets, as TCP handles data integrity in it=B4s realm. > The packets would contain the Flag words. Thomas =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F Endlich SMS mit Bildern versenden! Das Bild selbst ist dabei gratis, Sie bezahlen lediglich den Versand. http://freemail.web.de/=3Fmc=3D021195 |
From: Thomas H. <Tho...@we...> - 2004-05-11 22:04:49
|
"Thomas Hergenhahn" <Tho...@we...> schrieb am 12.05.04 00:01:0= 4: "Can Cui" <cac...@fh...> schrieb am 11.05.04 22:53:11:=20 > =20 > Dear Mr. Thomas Hergenhahn,=20 > =20 > In your former email, you said these about how to send commands from=20 > client to the server:=20 > =20 > >> how do we send operation commands from the client to the=20 > >>server. The connection between client and server has already been set = up.=20 > >=20 > > The client (HMI page) sends commands to the server, which will update=20 > > values in the=20 > > spreadsheet. You can watch the changes in the spreadsheet editor direc= tly.=20 > >=20 > =20 > Would you please explin this in detail=3F For example, if we want to send=20 > commands to the server, which function, class are we going to use=3F=20 > =20 Again, I=B4m not quite sure what you want to do.=20 Using VISUAL as mainly intended (hmi and server together), any page will h= ave the line:=20 <param name=3D"communicator" value=3D"hmiVisualCI">=20 or, in the newer version:=20 <param name=3D"communicator" value=3D"org.visual.hmi.protocol.hmiVisualCI">=20 All your widgets put their variable names int a hashtable held by hmiViewe= r Applet.=20 hmiViewer passes them to the communication interface.=20 hmiVisualCI will issue a request like the following to VISUAL=B4s server:=20 "getlist A1,A2,B9,H111,G7,2:F3<lf>"=20 The server would respond with something like:=20 A1=3D1.0<lf>=20 A2=3D8.222<lf>=20 B9=3D1.122<lf>=20 H111=3D12.1<lf>=20 G7 =3D=3F=3F=3F<lf> // assumed this cell doesn=B4t exist=20 2:F3=3D8.444<lf>=20 end of list<lf>=20 =20 If you include a widget that can change values, e.g. a potentiometer, then= , if the user=20 changes its position clicking it, the potentiometer will call hmiViewers p= utVal()=20 method, e.g. putVal(Q13,17.0). hmiViewer passes this to hmiVisualCI=B4s putV= al method,=20 which will issue a call to the server:=20 set Q13=3D17.0<lf>=20 The server should responds with:=20 ok<lf>=20 =20 There are some more commands in the protocol:=20 From hmi pages, these are also used:=20 sheet=3D[number] sets the standard spreadsheet after connecting.=20 tset [col][row]=3D1<lf> sets a variable to 1, which will then be reset to 0 = after=20 delivering it to the PLC. This is for pushbuttons, see better explanations= in=20 hmiVisualCI.java or the server source or in plcdrv.cc=20 savesettings<lf> instructs the server to save all values changed by hmi pa= ges into=20 files to save settings permanently. (so they are still present after serve= r restart)=20 =20 There are other commands the server can understand, which are used to disp= lay/edit a=20 spreadsheet remotely. I also may have forgotten something here :-)=20 =20 If you view the spreadsheet, you could watch how the value of Q17 changes = in above=20 example.=20 You could also change values manually and see how they are propagated to t= he hmi page=20 in the next refresh cycle.=20 =20 You can test the server with some Perl scripts coming with VISUAL, servert= est.pl and=20 any other file named like s*test.pl. You can modify these scripts to test = just what you=20 like or what variables exist in your spreadsheets.=20 =20 Thomas=20 =20 =20 =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F ... and the winner is... WEB.DE FreeMail! - Deutschlands beste E-Mail ist zum 39. Mal Testsieger (PC Praxis 03/04) http://f.web.de/=3Fmc=3D021191 |
From: Thomas H. <Tho...@we...> - 2004-05-10 09:50:41
|
"Thomas Hergenhahn" <Tho...@we...> schrieb am 10.05.04 11:46:00: "Can Cui" <cac...@fh...> schrieb am 10.05.04 01:47:06: > > Dear Mr. Thomas Hergenhahn, > > When we click the menanisa picture on the right site"(hmiTool.class) of > "Design.html, the picutre will not appear on the left site of it > (hmiDesigner.class). We thought it could be the problem of hmiMultiIcon, > but it turned out to be all right. So we just wrote the HTML code for > displaying picture to complete the HMI page of our application. Ok, I got reports about this problem earlier, but I did not think it was this you meant, because the designer is already far from functional (I hope to release a mostly funtional one, not web based, but as a JAVA application, this week). Problems occured for two reasons: 1.) depending on the browser or better, tthe JAVA implementation used by it, two Applets running in the same page do or do not share the same CodeBase in class AppletStub or AppletContext. 2.) The size of the displayed imgage is not identical to the configured size of hmiMultiIcon (the image is always shown in real size regardles what width and height hmiMulticon has). Here, the active area (where it reacts on clicks) was only a small area (about one third) in the upper left corner. This was my fault when setting up the page: -( Thomas _______________________________________________________________________ ... and the winner is... WEB.DE FreeMail! - Deutschlands beste E-Mail ist zum 39. Mal Testsieger (PC Praxis 03/04) http://f.web.de/?mc=021191 |
From: Thomas H. <Tho...@we...> - 2004-05-09 12:11:40
|
"Can Cui" <cac...@fh...> schrieb am 09.05.04 13:16:29: =20 > =20 > =20 > We have noticed that neither of old or new verion code can make =20 > hmiMultiIcon class work. Is hmiMultiIcon class not finished=3F If we want = to =20 > display an image in the HMI (not as background and it could appear or =20 > disappear at the same position as we want), do we need to complete =20 > hmiMultiIcon class by ourselves=3F =20 > =20 Sorry if this is so. The class is finished and functional. as you can the = from the =20 hmiMultiIcon demo page at visual.sourceforge.net. But maybe the number and= meaning of =20 parameters have changed in between, I=B4m not quite sure myself. =20 =20 You should be able to get similar demo page invoking PageViewer with the J= AVA source =20 (all widget sources contain an applet tag as a comment). =20 =20 ./PageViewer org/visual/hmi/hmiMultiIcon.java =20 =20 If this doesn=B4t work, here is the most up to date code. I=B4ve verified that= it does work =20 before attaching it to this mail. =20 =20 Thomas=20 =20 =20 =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F Der WEB.DE Virenschutz schuetzt Ihr Postfach vor dem Wurm Netsky.A-P! Kostenfrei fuer alle FreeMail Nutzer. http://f.web.de/=3Fmc=3D021157 |
From: Thomas H. <Tho...@we...> - 2004-05-07 16:37:46
|
"Can Cui" <cac...@fh...> schrieb am 07.05.04 13:30:42: >Sorry to bother you again. No problem. > I would like to ask when we try to control the PLC via Internet, To prevent any misunderstanding: What is usually controlled via network are values inside the PLC. Controlling "the PLC" might also be understood as: Switch it to run/stop, load PLC program etc. That is NOT supported. (Ok, there are two extra programs, serialProxy and serialClient to "tunnel" serial connections over a network, but you need three computers and the original programming software, e.g. Step7 and you must shut down VISUAL while doing this). > how do we send operation commands from the client to the >server. The connection between client and server has already been set up. The client (HMI page) sends commands to the server, which will update values in the spreadsheet. You can watch the changes in the spreadsheet editor directly. On the other side, the server, if setup to do so, fetches data from the PLC(s) and writes back changes to the PLC(s). I think that shujat and arijit (excuse me if I mispelled their names) are currently dealing with this part. Once this works, you can as well trigger updates by hand, inserting new values into a cell that is configured to be written to the PLC. So there is NO DIRECT operation that the client performs on the PLC. The idea of this concept is to make it most easy to: 1) Test both parts without having the other yet ready 2) Make it most easy to change PLC brand. HTH Thomas _____________________________________________________________________ Der WEB.DE Virenschutz schuetzt Ihr Postfach vor dem Wurm Netsky.A-P! Kostenfrei fuer alle FreeMail Nutzer. http://f.web.de/?mc=021157 |
From: Thomas H. <Tho...@we...> - 2004-05-05 16:55:56
|
"Arijit Bhattacharrya" <arb...@fh...> schrieb am 05.05.04 16:= 24:07: =20 =20 Hello Arijit, =20 =20 I connected an S7-300 to my PC, downloaded myself version 0.0.21 to have t= he exact =20 code, and, very sorry, I must tell you we have now TWO problems: =20 =20 The first ist that your adapter sends NAK, according to the last log file.= =20 That may be different after a reset or with another adapter or with change= s in the =20 drivers initialization code. =20 =20 But the second problem is the s7MPI driver doesn=B4t even work on my box wit= h my adapter. =20 The problem is I changed a function comparing responses to a given byte pa= ttern so it =20 can deal with bytes marked don=B4t care in the middle of a sequnce. This was= to handle =20 slight differences more easily. But I did not test the code before releasi= ng it -:( =20 =20 The second is I introduced a method to reload the driver=B4s tfi on a signal= . =20 Again, this doesn=B4t work with s7MPI. =20 =20 Both problems arose from mixing different code versions. =20 =20 Nearly 1000 people have it downloaded since, but nobody has ever reported = this... =20 =20 Exchange the attached files as a preliminary hot fix. Both files go to dri= vers=20 directory.=20 =20 A third little thing is, the s7mpi.tfi doesn=B4t fit the sheet 1 in work. Th= e problem is=20 the tfi wants to get the execution condition from A1, which is a text. So = It exits with=20 nothing to do, and repeats this so fast that it generates 45M of log file = in a few=20 seconds. To avaoid this, insert some number, e.g. 1.0 into cell A1 of the = first sheet.=20 =20 =20 I will send final fixes as soon as possible. =20 =20 Thomas =20 =20 =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F ... and the winner is... WEB.DE FreeMail! - Deutschlands beste E-Mail ist zum 39. Mal Testsieger (PC Praxis 03/04) http://f.web.de/=3Fmc=3D021191 |
From: Thomas H. <Tho...@we...> - 2004-05-02 22:59:14
|
>Dear sir,=20 =20 >We have been able to compile the application on Red hat Fedora and we are= =20 >on the stage of testing the system. We have a siemens PLC (sematic S7) on= =20 >CPU 315.=20 > The problem is that we do not know how to test the system. Do we=20 >need to run a PLC code and define some inputs and outputs=3F=20 No, you don=B4t. VISUAL reads memory contents from the PLC and the memory ex= ists and=20 contains something even if no program is present or the PLC is in stop sta= te.=20 This is at least true for the flag and input/output memory image areas (PA= E/PAA in=20 german Siemens terminology). If you want to access data blocks (DB), they = must exist in=20 the CPU and must be of at least the size you want to read or write to/from= them.=20 > Also We are not=20 >able to decipher the .tfi script for the siemens PLC and how does it work= .=20 Ok, these files are (or were, depends on the code version) a bit quirksome= , because I=20 began to write some driver for one PLC type and then began the next driver= , tryiing to=20 copy what was reuseable, but without any system behind it.=20 I tried to derive a more systematic approach from what existing drivers ha= d in common=20 and what I could expect that future drivers may need. The result is the pl= cdrivers=20 directory in current CVS code.=20 In the older versions, the fields had different meanings and were differen= tly ordered=20 for each driver. The newer approach groups the fields by:=20 execution control=20 PLC address=20 Spreadsheet address.=20 It also tries to introduce a uniform system for PLC addressing. As this de= pends much on=20 manufactureres addressing scheme or memory layout, also in the new system,= some fields=20 are not applicable for some PLC types and the allowed or meaningful values= depend on=20 PLC type.=20 Nevertheless, it should be easier to work with the newer code from CVS, us= ing the=20 drivers in plcdrivers.=20 The CVS also contains some examples, but I=B4m not shure whether Siemens is = among them.=20 See PLCdriver.h from plcdrivers. The comment gives an overview about the f= ields and=20 their meaning.=20 =20 This is a tfi file from an application with the older driver: =20 =20 <S7MPI> 'read DB5 DBW0..' 2 0 5 0 199 2 0 1 'C4' 'E1' 'A1' </S7MPI>=20 <S7MPI> 'read DB5 DBW100..' 2 0 5 0 199 2 0 1 'C104' 'E2' 'A1' </S7MPI>=20 =20 detailed meaning:=20 =20 <S7MPI> let the driver recognize it=20 'read DB5 DBW0..' a comment. This reads DB5 from DW0 on.=20 2 MPI address of PLC. 2 is factory setting.=20 0 data Area: data block ( others are flag memory, input or output)=20 5 nuber of data block=20 0 first word=20 199 last word=20 2 data type, 2 is words. Newer drivers use format string based type de= finition=20 0 read or write, 0 is read, 1 is write =20 1 use sheet 1=20 'C4' target cell. The first value is written to C4, the next C5, next to = C6.=20 'E1' error codes go here.=20 'A1' this cell controls excution. Must exist and have value <>0.=20 </S7MPI>=20 =20 Note:=20 For the above line, you must have a spreadsheet wit numeric cells in C4 to= C4+199.=20 Cells must exist prior to execution of tf instructions by the driver or th= e values got=20 to /dev/null (digital nirwana). They do not "spring into existence" automa= tically, as=20 they would in EXCEL. This is intended, to make the program more robust. Ot= herwise,=20 changing a tfi line could overwrite formulas or other cells vital to the a= pplication.=20 =20 >There is another question. Is mysql critical to the running of the=20 >system=3F=20 No, it is not. Just comment out the respective targets (log=5Fmysqlx,x some = number or=20 blank) in drivers/Makefile.am=20 configure from CVS code should detect the presence of either mysql headers= or=20 libmysql.so and should not build these drivers if either is absent.=20 >We do not want to store data anywhere. We just want that the HMI=20 >should be able to change the spreadsheet data or access data from the=20 >spreadsheet. Also the values in the spreadsheet should be read and writte= n=20 >from or in the PLC respectively.=20 An advantage of VISUAL=B4s concept, having the spreadsheet as an intermediat= e memory that=20 is directly visible and accessible via spreadsheet editor window, is that = these two=20 tasks can be carried out and tested independendly from each other:=20 Set up your driver configuration and tfi files and see the values from the= PLC(s).=20 Set up your HMI pages and see them exchange data with the spreadsheet.=20 Both can be done without having ready or at disposal the other.=20 =20 >We would be very grateful if you can throw some light on the above=20 >problems as we are stuck in the middle.=20 =20 If you need assistance more specific to your application case, please tell= me what data=20 from which areas of your PLC you want to read and write and I can send you= a tailored=20 tfi file. =20 In PLC<->HMI or SCADA setups, often one (or few) data block(s) in the PLC = application=20 is dedicated to the data exchange. While this is not strictly nacessary wi= th VISUAL. it=20 speeds up data exchange.=20 If you have already defined such a data block, send me a printout. In Step= 7, open the=20 data block (in declaration view) and print it out to a file, not a printer= , as pure=20 text. You may need to setup a new (pseudo) printer of type generic/text on= the machine=20 you run Step7, if such a printer isn=B4t yet configured.=20 Then, please send me the output file.=20 =20 Thomas=20 =20 Asuuming your permission, a copy goes to the visual development mailing li= st, as some=20 of the questions and answers might be of interest to others. too.=20 =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F Der WEB.DE Virenschutz schuetzt Ihr Postfach vor dem Wurm Netsky.A-P! Kostenfrei fuer alle FreeMail Nutzer. http://f.web.de/=3Fmc=3D021157 |
From: Thomas H. <Tho...@we...> - 2004-04-11 15:34:15
|
Eric Freyens <eri...@ti...> schrieb am 11.04.04 16:36:11:=20 =20 >/usr/bin/ld: ne peut trouver -lmysqlclient=20 >collect2: ld a retourn=E9 1 code d'=E9tat d'ex=E9cution=20 =20 >My config :=20 >[efr@lynx visual]$ cat /proc/version=20 >Linux version 2.4.22-1.2115.nptl (bhc...@bu...) (gcc =20 >version 3.2.3 20030422 (Red Hat Linux 3.2.3-6)) #1 Wed Oct 29 15:31:21 =20 >EST 2003=20 =20 >Mysql are installed=20 =20 Make sure you also installed MySQL development headers and linmysqlclient.= =20 These may be in separate and different packages (don't know Redhat).=20 Try to find libmysqlclient using locate or find.=20 Make sure it is in the path configured in /etc/ld.so.conf.=20 Run ldconfig to make sure it is also in /etc/ld.so.cache.=20 =20 If you have a gcc-3.x.x and visual-0.0.21, you will propably encounter ano= ther error in=20 s7slave.so. =20 Either get a corrected version of this file which is available from the so= urceforge=20 page under "patches"=20 Or use the latest code from CVS=20 =20 Hope that helps=20 =20 Thomas=20 =20 =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F Der WEB.DE Virenschutz schuetzt Ihr Postfach vor dem Wurm Sober.A-F! Kostenfrei fuer FreeMail Nutzer. http://f.web.de/=3Fmc=3D021158 |
From: Paolo <pao...@li...> - 2004-02-17 11:13:43
|
Thanx Thomas, I'll grab the new version of log_text and apply the necessary modifications there. It was a little experiment to have a more complete simulation: one driver, one logger, etc :) ----- Original Message ----- From: "Thomas Hergenhahn" <Tho...@we...> To: "Paolo" <pao...@li...>; <vis...@li...> Sent: Sunday, February 15, 2004 9:56 PM Subject: log_text > I have fixed the code of log_text.cc. I also added log_text2.cc and > log_text3.cc, which add more features. > > I also added a directory "examples", where I put some test configurations. > > These can be started using: > visual examples/xxx.cfg 2>vout. > Thomas > |
From: Thomas H. <Tho...@we...> - 2004-02-15 20:36:43
|
I have fixed the code of log_text.cc. I also added log_text2.cc and log_text3.cc, which add more features. I also added a directory "examples", where I put some test configurations. These can be started using: visual examples/xxx.cfg 2>vout. Thomas |
From: Thomas H. <Tho...@we...> - 2004-02-15 11:53:09
|
On Sunday 15 February 2004 00:28, you wrote: > Hi, > > My name is marc sinclair I would like to play with visual, > I have access to lots of s7-200 kit and wanted to try out some of > your code but the link to the s7-200 driver is broken, when will this be > repaired? Sorry Marc, I do not quite understand what you intend to tell me. I could imagine that you may want to say that the driver cannot be compiled ? I guess so because I've had reports that drivers/s7slave could not be compiled. There is a fix for this (you can get it as patch from the sourceforge page), but on the other hand you will probably never need it, as s7slave is NOT a driver to connect to an S7 but to let VISUAL fake an S7, so you can comment it out in drivers/Makefile.am I do not remember what was the state of the S7200ppi driver (this is what you need) in version 0.0.21. but I should like to suggest you to use more recent code from CVS, as I know it has a working driver for S7-200. regards |
From: Jiri B. <ji...@ba...> - 2004-02-12 16:20:29
|
> >> I should like to suggest that you might use these functions to interface > >> with matPLC. For VISUAL, I plan to modify PLC drivers in a way that they > >> rely on library routines providing above described functionalty. > >> This means also that I'm prepared to provide the protocols for the other > >> PLC families supported by VISUAL in similar libraries. My problem is > >> that I do not have different PLCs from each manufacturer to testwith. > > > >The other possibility would be to migrate all the drivers to one project > > or the other, and interface the two together. > > I don't think so. What I tried to say in the above mentioned thread on > control.com and what I tried in designing the interface of libnodave is to > design it for general purpose useful to many more projects. Yeah; ideally the MatPLC or VISUAL, as a library, would also be useful to many projects... The idea behind migrating the drivers to one project would be that the particular project would become the designated PLC driver collection. All other projects that need to talk to PLCs would then interface to it. An alternative would be to start a new project, design a new interface, and go from there; I believe Lynn Linse is working on that, but only started a month or two back, so it's going to be a while yet. The MatPLC does provide a more than a plain interface to PLC data, but if you just want to use it for that, there's not that much extra - mostly end-user flexibility, where they can map data to different physical I/O (or even fixed values) without you having to do anything to enable that. > >For instance, if the drivers were > >migrated to the MatPLC, the VISUAL server would link against the matplc > >library instead of loading the PLC drivers. > > In VISUAL it is not THE library, but shared objects for each PLC type, > because most users will not need more than one while the total number of > supported PLCs may (hopefully) reach hundreds (Seeing the lists of other > SCADA vendors...). I understand. The main difference would be that rather than being loaded by the VISUAL server directly, the driver (usually just one) would be running alongside as a MatPLC module, providing data. > >(The MatPLC points are named rather than having a dev/subdev/area/offset > >structure, > > This structure doesn't reflect VISUAL's side, but is meant as a superset of > the supported PLC's addressing scheme. In addition to these items, there > are an area number and a transport method. Yes. MatPLC takes the approach of user-meaningful variable names, which are translated to actual device addresses as late as possible (in the PLC driver). > >Possibility three is the DAIS thing, which is pretty much the equivalent > > of OPC, but it's a bit heavy-weight for our purposes. Eventually we'll > > need DAIS anyway, but for communicating over the network, not for local > > interface. > > I don't know that. DAIS is basically the CORBA equivalent of OPC. It would be possible to use it as the protocol for talking between a driver and MatPLC or VISUAL, but it seems overkill to have an arms-length protocol like CORBA between two GPL'd pieces of code... Jiri -- Jiri Baum <ji...@ba...> http://www.csse.monash.edu.au/~jirib MAT LinuxPLC project --- http://mat.sf.net --- Machine Automation Tools ------------------------------------------------------- SF.Net is sponsored by: Speed Start Your Linux Apps Now. Build and deploy apps & Web services for Linux with a free DVD software kit from IBM. Click Now! http://ads.osdn.com/?ad_id=1356&alloc_id=3438&op=click _______________________________________________ MAT-devel mailing list MAT...@li... https://lists.sourceforge.net/lists/listinfo/mat-devel |
From: Thomas H. <Tho...@we...> - 2004-02-12 15:43:21
|
mat...@li... schrieb am 12.02.04 14:57:28: Hello, >Jiri: > >as far as visual is concerned, what's the situation with MatPLC taking > >advantage of visual's PLC drivers=3F Can that be done with the existing > > code, >Thomas Hergenhahn: >> I don't know whether this can be done with the existing code in mat as,= I >> did not download recent code for quite a while. But I also think this i= s >> not the way to go: The drivers are shared objects, but they heavily rel= y on >> VISUAL's "infrastructure". >Right. It just seems a duplication to have separate drivers in the two=20 >projects... >> sequences) to and from the PLCs and to close the connection. >I think we have libnodave on our to-do list, but nobody's got around to i= t=20 >yet. (Unless you'd be willing to interface it to the MatPLC=3F) Ok, I consider this. >> See also my remarks on this subject in: >> http://www.control.com/1026183428/index=5Fhtml >Yeah, that whole thread is interesting. Getting a unified driver interfac= e=20 >would be very good. >> I should like to suggest that you might use these functions to interfac= e >> with matPLC. For VISUAL, I plan to modify PLC drivers in a way that the= y >> rely on library routines providing above described functionalty. >> This means also that I'm prepared to provide the protocols for the othe= r >> PLC families supported by VISUAL in similar libraries. My problem is th= at I >> do not have different PLCs from each manufacturer to testwith. >The other possibility would be to migrate all the drivers to one project = or=20 >the other, and interface the two together.=20 I don't think so. What I tried to say in the above mentioned thread on con= trol.com and what I tried=20 in designing the interface of libnodave is to design it for general purpos= e useful to many more=20 projects. >For instance, if the drivers were=20 >migrated to the MatPLC, the VISUAL server would link against the matplc=20 >library instead of loading the PLC drivers. In VISUAL it is not THE library, but shared objects for each PLC type, bec= ause most users will not=20 need more than one while the total number of supported PLCs may (hopefully= ) reach hundreds=20 (Seeing the lists of other SCADA vendors...). >(The MatPLC points are named rather than having a dev/subdev/area/offset=20 >structure, This structure doesn't reflect VISUAL's side, but is meant as a superset o= f the supported PLC's=20 addressing scheme. In addition to these items, there are an area number an= d a transport method. "device" one of multiple physical units on a common interface GE Fanuc: SNP address Allen Bradley: Data Highway node number Siemens: MPI address modBus: not used, possibly IP address "Subdevice" would address a part(rack,slot) in the device. Not yet used =3F modBus: modBus unit ID "Area " addresses a type of memory where addresse begin from start: GE Fanuc: M,R,AI,AQ etc. memory areas Allen Bradley: Area type is (N,F,...) but is not really evaluated. Siemens: Data , Flags, or Input/Output, modBus: not used "Area number" GE Fanuc: not used Allen Bradley: File number Siemens: Data block number in case of data. modBus: not used "Transport method" GE Fanuc: "R" for read or "W" for write Allen Bradley: A valid combination of CMD and FNC codes, e.g. "0xF 0xA2" Siemens: "R" for read or "W" for write. modBus: codes 3,4,15,16 if I remember right. Ok, they determine areas her= e also (registers, input=20 registers) but its easier like this, because the library doesn't need to k= now about them. > but otherwise it's fairly similar to your proposal. There's a=20 >couple of extra functions to ensure that a bunch of values all come from = the=20 >same scan and to let the library limit your scan rate, but that's it. All= up,=20 >it's seven functions to call.) >Possibility three is the DAIS thing, which is pretty much the equivalent = of=20 >OPC, but it's a bit heavy-weight for our purposes. Eventually we'll need = DAIS=20 >anyway, but for communicating over the network, not for local interface. I don't know that. Thomas =5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F=5F= =5F=5F=5F=5F Extra-Konto: 2,50 %* Zinsen p. a. ab dem ersten Euro! Nur hier mit 25 Euro-Tankgutschein & ExtraPr=E4mie! https://extrakonto.web.de/=3Fmc=3D021110 |
From: Thomas H. <Tho...@we...> - 2004-02-12 15:43:04
|
mat...@li... schrieb am 12.02.04 14:57:28: Hello, >Jiri: > >as far as visual is concerned, what's the situation with MatPLC taking > >advantage of visual's PLC drivers? Can that be done with the existing > > code, >Thomas Hergenhahn: >> I don't know whether this can be done with the existing code in mat as, I >> did not download recent code for quite a while. But I also think this is >> not the way to go: The drivers are shared objects, but they heavily rely on >> VISUAL's "infrastructure". >Right. It just seems a duplication to have separate drivers in the two >projects... >> sequences) to and from the PLCs and to close the connection. >I think we have libnodave on our to-do list, but nobody's got around to it >yet. (Unless you'd be willing to interface it to the MatPLC?) Ok, I consider this. >> See also my remarks on this subject in: >> http://www.control.com/1026183428/index_html >Yeah, that whole thread is interesting. Getting a unified driver interface >would be very good. >> I should like to suggest that you might use these functions to interface >> with matPLC. For VISUAL, I plan to modify PLC drivers in a way that they >> rely on library routines providing above described functionalty. >> This means also that I'm prepared to provide the protocols for the other >> PLC families supported by VISUAL in similar libraries. My problem is that I >> do not have different PLCs from each manufacturer to testwith. >The other possibility would be to migrate all the drivers to one project or >the other, and interface the two together. I don't think so. What I tried to say in the above mentioned thread on control.com and what I tried in designing the interface of libnodave is to design it for general purpose useful to many more projects. >For instance, if the drivers were >migrated to the MatPLC, the VISUAL server would link against the matplc >library instead of loading the PLC drivers. In VISUAL it is not THE library, but shared objects for each PLC type, because most users will not need more than one while the total number of supported PLCs may (hopefully) reach hundreds (Seeing the lists of other SCADA vendors...). >(The MatPLC points are named rather than having a dev/subdev/area/offset >structure, This structure doesn't reflect VISUAL's side, but is meant as a superset of the supported PLC's addressing scheme. In addition to these items, there are an area number and a transport method. "device" one of multiple physical units on a common interface GE Fanuc: SNP address Allen Bradley: Data Highway node number Siemens: MPI address modBus: not used, possibly IP address "Subdevice" would address a part(rack,slot) in the device. Not yet used ? modBus: modBus unit ID "Area " addresses a type of memory where addresse begin from start: GE Fanuc: M,R,AI,AQ etc. memory areas Allen Bradley: Area type is (N,F,...) but is not really evaluated. Siemens: Data , Flags, or Input/Output, modBus: not used "Area number" GE Fanuc: not used Allen Bradley: File number Siemens: Data block number in case of data. modBus: not used "Transport method" GE Fanuc: "R" for read or "W" for write Allen Bradley: A valid combination of CMD and FNC codes, e.g. "0xF 0xA2" Siemens: "R" for read or "W" for write. modBus: codes 3,4,15,16 if I remember right. Ok, they determine areas here also (registers, input registers) but its easier like this, because the library doesn't need to know about them. > but otherwise it's fairly similar to your proposal. There's a >couple of extra functions to ensure that a bunch of values all come from the >same scan and to let the library limit your scan rate, but that's it. All up, >it's seven functions to call.) >Possibility three is the DAIS thing, which is pretty much the equivalent of >OPC, but it's a bit heavy-weight for our purposes. Eventually we'll need DAIS >anyway, but for communicating over the network, not for local interface. I don't know that. Thomas ______________________________________________________________________________ Nachrichten, Musik und Spiele schnell und einfach per Quickstart im WEB.DE Screensaver - Gratis downloaden: http://screensaver.web.de/?mc=021110 |
From: Thomas H. <Tho...@we...> - 2003-11-22 17:51:39
|
Eric Freyens <eri...@ti...> schrieb am 22.11.03 15:11:21: Hello Eric, Sorry for the inconvinience. There is an error copying a char array instead of a pointer. I used older gcc-2.95.3 which doesn't find it. A corrected version is in the attachment. Thomas ______________________________________________________________________________ Horoskop, Comics, VIPs, Wetter, Sport und Lotto im WEB.DE Screensaver1.2 Kostenlos downloaden: http://screensaver.web.de/?mc=021110 |
From: Thomas H. <Tho...@we...> - 2003-09-28 14:59:29
|
On Friday 26 September 2003 20:55, you wrote: > Hi, > > I browsed around you hmi pages and will certainly try you program in the > near future. I have one question about the driver/spreadsheet. > How does the driver handles the updating of data? It works through the list of TFI (transfer instructions). When the last one is executed. it begins from start. In read from PLC operations, usually the whole block of data is fetched. In write to PLC operations, every corresponding cell is checked and only if it has changed, the corresponding data is written to the PLC. To achieve a consistent state, all cells are marked as changed on program start. > Depending of the recalculation time of the cells, as fast as possible or > depending on the requested data from the cells. As fast as possible. I'm thinking about introducing a delay statement into TFI lists for very fast (ethernet based) protocols. > In other words : if at a certain time spot, only half of the data > configured in > the cells is displayed in the hmi pages, and the other 50% > is not used anywhere, is these data then also refreshed? Yes it is. Another client may need it or you may have a formula that combines data from multiple sources or you may want to store the data to a database or to a trend data file. Or another program/device may ask for the data via a slave driver. Given all these possibilities, it is easier to re-read all data then doing the bookkeeping of what is really needed. Also many protocols involve so much overhead that it would be slower to read two data items separately then a larger block containing both of them together with some unused stuff. Regards, Thomas PS: I send a copy to the visual-devel mailinglist, because this may be interesting for others, too. |
From: Thomas H. <Tho...@we...> - 2003-07-10 13:01:14
|
I got a report that the linker complains about multiple entries to setport when linking serialProxy. This may affect Versions 0.017 and/or 0.0.19. Please make sure that the entries in Makefile.am look like this: serialProxy_SOURCES = serialProxy.cc drivers/setport.cc serialProxy_LDADD = drivers/setport.o -ldl -lpthread Thomas ____________________________________________________________________________ Nur bei WEB.DE Testsieger FreeMail testen und damit 1 qm Regenwald schuetzen. Jetzt anmelden und mithelfen! http://user.web.de/Regenwald |
From: Thomas H. <Tho...@we...> - 2003-07-10 12:58:55
|
I got the following feedback from a user after he told me that make reported a missing ./depcomp script: Hello Thomas, the ./depcomp problem is solved. I simply copied one from /usr/share/automake-1.7/ ,that was it. ____________________________________________________________________________ Nur bei WEB.DE Testsieger FreeMail testen und damit 1 qm Regenwald schuetzen. Jetzt anmelden und mithelfen! http://user.web.de/Regenwald |
From: Thomas H. <Tho...@we...> - 2003-03-31 21:36:52
|
On Monday 31 March 2003 16:14, you wrote: Hi Matej, > Thank you very much for your effort. Your update fixed the gcc3.2 problem! Thank you for your reply. I allways like to hear when something works :-) > I still have some problems with depcomp file, but I'll try to find out I ralso read your other mail about having solved it. I'm not too good (means really bad) in using autoconf. So I', glad to read it was not my fault. > what's wrong by myself and I'll let you know about it. > I'm planning to use Visual in combination with MatPLC in a real world > application - hobby only, so slow progress is to be expected > . ;-) I've tried out little of matPLC. I'm sceptical about two aspecte of it's behaviour in comparision with real PLCs. This reflects my current knowledge and humble opinion. I told the matPLC developers about it, but they to seem to be too concerned about it. 1. When I start the GTK hmi demo, the main program is slowed down very much during loading. This is, IMHO, inacceptable for a PLC replacement. Consider the example of an elevator (lift) that shall stop in the fifth floor. When passing fifth floor's positional contact and the computer is busy with some other task and when matPLC regains conscience, we may be in the seventh floor already. ;-) A solution to this would require hard realtime capabilities. 2. When the program restarts, it does not preserve any information about the process state. In real PLCs, you have the possibility to store information in battery buffered RAM. So, in the elevator example, you may store information about having pressed fifth floor command button. You know stop the PLC. The elevator also stops, because outputs go to safe state 0. Know you do some modifications/maitenance to the PLC program. Set the PLC to "run" state again and the elevator will continue it's way to 5th floor. This is not too important in the elevator example, but in industrial machinery, there may be lots of settings which should be preserved over restarts. 3. Most PLCs offer the possibility to modify a runnig program. On some models this can be dangerous also, but it's common practice. I thought about how to implement these features in a LINUX based soft PLC, but it's very low priority to me. I fear it would mean a complete redesign of matPLC. > Let me know if there is anything I could contribute to your project. I have > some experience in this field (unfortunately only on Windows) - I wrote few > OPC drivers For Windows, I suppose... I will need OPC communication to VISUAL until june or july. The important thing for me is to use VISUAL as a client to an existing OPC server. I searched for freely available examples. My plan was: 1. get an example to run under wine 2. compile it with wine's libraries and get it to run again 3. extract a minimum of necessary funtions from wine code Until know, I did not yet succed with point 1 )-: >...and did some SCADA design with Intellution iFix dynamics in the > past. Any suggestions about what is better in intellutions are highly welcome. Thomas |
From: Thomas H. <Tho...@we...> - 2003-03-30 01:35:05
|
I further had to change the order of inclusions of header files in many places for gcc3.2. Now the version currently in CVs compiles and works. please update from latest CVS Thomas |
From: Thomas H. <Tho...@we...> - 2003-03-29 22:30:04
|
---------- Forwarded Message ---------- Subject: Re: building visual Date: Sat, 29 Mar 2003 23:29:42 +0100 From: Thomas Hergenhahn <Tho...@we...> To: ze...@em... Cc: vis...@li... Sorry, before I wrote the first mail, I have done all trials on the latest release (0.0.19), because I assumed you used it. Know, after trying to compile the current CVS contents, I had the same problem with <map> The reason is line 51 in persist.h. Please uncomment using std::map Thomas ------------------------------------------------------- |