Jump to content

bc_fred

Members
  • Posts

    26
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by bc_fred

  1. Hi: Brand new V350-J-TR6, straight out of the box, hotted up, a fresh install (yesterday) of Visilogic 9.8.31 on Windows 7 Pro. I went to the Start-up Display, added a piece of text and then tried to add a Numeric object and Visilogic crashed. The "UnHmPge2" message is "Run-time error '372': Failed to load control 'ActiveBar3 from ActBar3.ocx. Your version of 'Actbar3.ocx may be outdated. Make sure you are using the version of the control that was provided with your application". Searching shows that this was reported as a problem way back in 2008 on Linux. I DO have Unilogic installed as well. Please don't tell me that THAT might be a problem. If anyone has any ideas, I'd appreciate it. I'm literally dead in the water 15 minutes into a brand new project. Image attached of the error message. Thanks, Fred Mason Roberts Creek, BC Canada
  2. Hi: Application is sent to the support email. Thanks.
  3. The addresses are not in hex. I haven't tried to write to the output yet. The Inputs do not work. As explained, if I eliminate the output function, the comms stop working. Also, again, the Slave ID is incorrectly reported as 1 in the struct for the slave definition in the Modbus Master. As mentioned, ModScan64 correctly shows the Inputs from my PC with the addresses 10001 through 10008. I have edited my previous post to include (again) my latest screen captures.
  4. Ok, here's an update. The very first thing I did was to update my UniLogic to Version 1.13, Rev. 9 and to download the Firmware Update to the PLC. Following your instructions, I reset the Slave/unit ID to 255, and downloaded. The sessions began to run with 100% success, and the Status for the Slave in the struct was 1, for successful. However ... my jumpered Discrete Input (address 10001) does not show HI, nor does it change when I unjumper it. This is the value that IS showed correctly on the laptop using Modbus sniffer tool, ModScan64. I have two tags configured, IN1 for the Discrete Input, and OUT1 for the first Coil (*write*) output. If I remove IN1 (delete the tag), there is no change in Sessions/Succeeds. If I remove the OUT1 tag, the Sessions fail 100%. Plainly, the IN1 tag is not being polled. Also, when I look at the Struct for this Remote Slave, the Slave ID is still 1, even though the Slave ID in the Properties window is successfully changed to 255. I deleted and re-created the Remote Slave and the Slave ID in the Struct remained at 1, even though the properties window showed 255. I've attached a summary of screen captures showing these results. Your continued help on this is very much appreciated!
  5. Hi: Thanks for the ideas; I will check into them and get back to you when I get to the shop again. Much appreciated. We did do one test. At the request of the EtherTrak Tech Support, we installed ModScan64 and were able to successfully return Input Status values for the I/O card repeatedly. This was configured using Modbus TCP and the IP address of the unit and a slave/unit ID of 1. So, PC to I/O card works using the IP method via Ethernet.
  6. Guru: Thanks much for getting back to me/us. I have confirmed what you say, and that I am consistently getting Status 2 errors. See below/attached. We can ping the target unit (an EtherTrak2 I/O module with two Ethernet ports and support for Modbus TCP). I have captured all the config settings there and fired off a request that they confirm settings on their side. Apart from pinging from the Unistream, which works, what else can we do to see what is holding up the comms? I am going to go back and review the documentation on the Modbus configs on the Unistream end, but there is not much in the way of examples or details. Thanks
  7. Further to this topic, are there any sample apps for UniLogic involving Modbus TCP/IP? I am a V350 - CANbus - Visilogic veteran, and am trying to diagnose comms problems with a RedLion Ethertrak2 I/O module. the UniStream and the Ethertrak2 are both plugged into a switch, and I can ping the Ethertrak2 (with fixed IP) from the UniStream. However, cannot read any registers. Where does the struct containing the required system tag info appear when a socket/slave is connected? Do you have to do any initialization on start-up like we did/do on booting a Vision controller? Thanks
  8. Jonathan: I had this problem as well. I had worked in Visilogic on a 24" extended monitor turned vertically, then I went to another location and hooked up to a horizontal extended monitor. I thought I had a corrupted copy of Visilogic. It turned out that a dialog box was positioned off-screen at a location that Visilogic remembered from the previous session. I was using XP Pro and had hibernated the laptop for the location change. Have a look at the open windows in the taskbar. The one thats trapped offscreen can be moved by right-clicking on it in the taskbar and selecting "Move". You can then move that window using the cursor keys. --- Speaking of using Visilogic on a 24 inch monitor in vertical mode, it's wonderful to be able to see multiple rungs or all of a complicated one, as well as watchpoints and lots of addresses at once. How I wish it were possible to widen the ladder to full width!
  9. It was the Enable bit for the CANbus node, that MB that you set in the CANbus Configuration dialog that apparently enables the transmit side of the CANbus card out to the other nodes. TPDO messaging worked all along. One would assume that an Enable bit would control comms both ways, but that's not the case. The help files don't show the Enable bit in the illustrations of the CANbus Configuration window, and it doesn't seem to be mentioned anywhere. My bad, I've been burned by this before. I'm sure there's a use for this bit, but it's not obvious to me what that is. --- I'm thankful that we didn't have to upgrade to a newer version of VisiLogic. The Release Notes should be more explicit about changes and potential incompatibilites. Damian, thanks much for your help and suggestions. I have to say that the Unitronics forum is a great resource, and much more responsive and relevant than A-B or Wonderware!
  10. The PLCs on hand have all been received from the Canadian distributor recently. Not sure of the OS Version, but it's at least 3.4. We haven't had any trouble downloading from 8.6.2/3 to them, i.e. no complaints from the software.
  11. We're testing a CANopen network consisting of a V570 as Master and an IFM CR0403 PLC acting as a Slave. We are using VisiLogic 8.6.2, and because of the installed base, we are not planning to upgrade to anything newer. In Info-Mode, we can see the TPDO messages arrive, as well as our NMT Control and Status messages. We can set the Slave in and out of Operational Mode (although only using CANID == 0, ie. All, rather than == 2 which is the Slave CanID, strangely enough). But we are not able to get our single RPDO message to go. - Is there anything particular we have to do in Info-Mode to see RPDO messages? We're sending our RPDO message every 500 mSec. My understanding is that messaging is unsolicited, so we don't need any special setup at the other end to receive the message. When we first tested, the RPDO message briefly worked, and then stopped. We are going to go back and try to re-create what we did. We've stripped out everything except the CANbus programming to simplify testing. We tried with a second V570 and had no success. Since we don't see the RPDO in Info-Mode, we are assuming the problem is with the Master, not the Slave. The V570's are new. - Is there anything in the Firmware of the current 570's that would interfere with RPDO's programmed with Version 8.6.2? - Can we use the "Log to SD Card" feature of the CANbus sniffer with a new V570? Thanks Fred Mason
  12. Just my 2 cents' worth: I wouldn't use UniOPC to connect to the PLC. It was quite difficult to set up, and the documentation is sparse. It was also flaky and would stop working. Instead, I'd connect using Modbus and make the PLC a Modbus slave for that purpose. Although I haven't done that with Unitronics, the Modbus I/O servers are very reliable in the Wonderware world. InTouch is quite good as a front end. I've used it on many projects and it is quite versatile. If you're just starting out using InTouch, you might consider taking a course. Wonderware distributors regularly offer them and they're worth it. The alternative is slogging through the documentation, which, like much documentation, is written by those who already know what to do.
  13. Anthony: This is also brilliant. If Unitronics ever sees fit to put a procedural language in (and document it!), life will be sweet. Thanks to you both. Fred
  14. The function "RTC to ASCII" is potentially useful. It would be more useful if one could get rid of the "/" separator in the MM/DD string and the ":" separator in the hh:mm string. I can move RTC to ASCII into three consecutive MI's. I suppose I could then move ASCII to NUM. The documentation for ASCII to NUM says that you specify a Source Vector address, a Vector Length, and a Destination Vector. (there's also something called a Factor, but that's to do with decimals, so I'm guessing that stays at zero. If there are two ASCII characters per MI, then the ASCII data laid out is: ADDR CONTENT ---------------- MI x MM MI x+1 /D MI x+2 D What would be ideal would be to move this all to 5 consecutive Integers, say, MI Y0 through Y4, then grab Y3 and Y4 and then put them on Y2 and Y3. This would kill the ASCII code for "/". Then I could grab Y0 through Y3 and put them in an ASCII set, e.g. MI Z0 and MI Z1. This would all be irrelevant if I could go RTC to String and then just knock out character 3, but that option doesn't seem to exist. Am I completely off base? I want to make a filename that consists of MMDDhhmm.udt on the SD card. That way, every time we create a new .udt file, we can immediately see the date and time of file creation. But I can't do this if I can't strip out the separators, because we can't exceed 8 characters. Any ideas welcome. The examples and documentation don't cover this, in my experience. Fred Mason
  15. Thanks much for your reply. I must admit that I read your link regarding the Domain vs. Block Segment distinctions and I don't understand it. I have looked at the sniffer in Info Mode, but it would be much more useful to copy to a table as you indicate in Visilogic 9.3.0. We bit the bullet and ordered a sniffer. I will let you know how we get on with our experiments. Thanks again.
  16. We are working with a Vision 350 PLC and a KollMorgen Linear Actuator Controller. We have to modify the PDO messaging contents to expand the list of values that are sent and received. We have a complete listing of the change messages that we have to send to the Actuator. We are using SDO Send STR and SDO Receive STR. Without a sniffer, it's hard to determine the exact contents of the outbound string message, but we know exactly what we have to put into it. Apparently, there is an ACK message that we get back each time, and we have to listen for it. I have read fantasia's document about talking to the robot and I see that there is an SDO Receive STR after the Send STR. She then compares the resultant received value to zero. If zero, all OK, otherwise, error. I've also read Tim Moulder's excellent documentation, which is greatly appreciated. Questions: - The ACK message comes back as a hex string. Can I view, somehow, the exact hex string returned? - Do I have to wait for an ACK containing zero in the data bytes before sending the next SDO Download STR? - Does anybody know the difference between "Domain Segment Transfer" and "Block Segment Transfer" in Parameter D of 'SDO Download STR'? Anyone at Unitronics?? Thanks for any and all kind words. Regards, Fred Mason Crosswind Power Systems Inc.
  17. Thanks for your response, Ofir. I DO get 127 (pre-operational) and 5 (operational). I have also been able to set bits in the target device. So, my comms seem to be working. The machine is still being constructed, so I don't get any operational chance to try things out for a little while. Thanks.,
  18. Hey jojo: I'll jump in since no one else came to your aid. In Info-Mode, when you're in the CANbus screen, initially the selection is "NO PROTOCOL". Touch "NO PROTOCOL" to select it (it will become darker). Then, use the yellow UP and DOWN arrows at the right to change the protocol selection. This works also for the baud rate. Info-Mode is our friend, really handy.
  19. I am no CANbus expert (far from it, unfortunately), but I am stuck on a problem with NMT Guarding. I have a Bosch/Rexroth SYHNC hydraulic controller that supports CANbus and CANopen, and a V350-TR34 PLC with a short CANbus network. (More to come, but I have to start someplace). I am using 500 kbps for a baud rate. There are no other gadgets on the network (yet). I can place the SYHNC in Pre-Operational and Operational mode from the PLC. I can get data back. However, I expect the NMT status value to alternate with each request to the SYHNC. I know the values to expect, and they're different for Pre-Operational and Operational mode. In both cases, the NMT Status value is stuck at a one of the two expected values. I have checked the CANbus "sniffer" in Information Mode and I seem to see both values coming back, but I get an error from the SYHNC that appears sporadically and then vanishes. I am in touch with the manufacturer, but I thought I'd ask here to see if anyone has seen similar behaviour - stuck NMT Status values. I DO get a TPDO Rx response. I get different values coming back in both controller modes, and they seem to be accurate. But I can't trust the network if the status values don't alternate, indicating a heartbeat. Thanks Fred Mason
  20. Hi Ofir: Thanks for your reply; much appreciated. I'm sorry but syntax doesn't solve the problem. The document in the support area that outlines configuration of OPCLink and InTouch says to configure the Topic and tag address as follows: Topic Tag Address ----------------------------------- PLC1 i.MI3 or PLC1. iMI3 where PLC1 is the name of the PLC and "i" designates an integer. The online documentation for UniOPC shows it as PLC1.MI3 without the "i" for integer designation. So I tried it both ways per below: Topic Tag Address ----------------------------------- PLC1 .MI3 or PLC1. MI3 None of these work. Sometimes OPCLink shows the topic as GOOD and then it times out and fails. Other times, it is reported immediately BAD. I am using System Time Seconds (SI 30) as my target value, and have also tried moving this to an MI register. I am using TCP/Call as my channel in UniOPC. I even explicitly declared Socket 1 as Slave on 20256 on my Comms initialize rung, even though this seems to be the default anyway. Do you have any more ideas? Regards Fred Mason West Coast, Canada
  21. Hi: I have a Vision 350 PLC and a Dell Latitude D520 laptop running the latest version of VisiLogic on XP Professional SP2. I have InTouch/Wonderware Version 9.0, and OPCLink 8.0. I'm using UniOPC, the latest version available from Unitronics, the website. I am communicating with the PLC via TCP/IP and I am able to download and program the PLC with no difficulty. My issues: I have used the InTouch/UniOPC configuration document that outlines how to set up OPCLink and InTouch to communicate. I have set my tag addressing both ways, one using a PLC Name of e.g. "PLC1" and a tag of "i.MI1" and the other way using an additional dot at the end of the PLC Name e.g. "PLC1." and NO dot in the middle of the PLC address for the tag, e.g. "iMI1". In both cases, I see evidence in UniOPC that part of the system works. I see the Event message "New Client Connected", and "Added New Item PLC1.iMI1". But, I don't get any value returned, (MI1 is actually the system clock seconds, (I'm using a Store Block to move SI 30 into MI 1) and is on display on the PLC screen, updating constantly). OPCLink reports that the Status is GOOD but that there are errors. The OPCLink I/O Data Monitor shows that the item is being accessed, but when double-click on the individual item, the status window says "data quality: UNCERTAIN", "substatus: No specific reason is known", and "limited: no". - What am I doing wrong/missing? I don't understand the difference between the Channels in Channel configuration i.e. TCP/IP Listen and TCP/IP Call except that I know that I can't have both with the same PLC name, so I have to pick one. I picked TCP/IP Call because I can specify the TCP/IP address of the PLC. - Should I be doing something else? - Do I have to explicitly name the PLC in my addressing for tags like "[PLC1].MI1"? - If I am running both UniOPC and OPCenum on a single computer, do I have to remove or disable OPCenum? Thanks for any and all help. I really want this system to be a success. Fred Mason
  22. Thanks for your comments. I independently discovered that you can start OPCenum as a service by entering "opcenum /service" at the Run command. This allows you to complete the configuration of OPCenum as described in the UniOPC manual dated 16/4/08. There is no mention in that document that you don't need to use OPCenum if you're running both Wonderware and UniOPC on a single computer. In fact, this manual would lead you to believe that both ARE running on a single computer. Regards Fred
  23. HI: I am attempting to connect Wonderware InTouch to a Vision 350 PLC via UniOPC. I have installed OPCLink 8.0 for the Wonderware side. I have installed and run UniOPC for the Unitronics' side. I am communicating normally with the PLC via TCP/IP for VisiLogic. My computer is running XP Pro, SP2. I have worked through the UniOPC installation and configuration manual several times. When I get to configuration of OPCEnum as part of DCOM, when I get to the Identity tab in OPCEnum properties, the documentation indicates to select "The System Account (services only)" at the bottom of the Identity tab. However, in my case, this option is unavailable, grayed out. As a clue, when I look at the General tab for the OPCEnum properties, OPCEnum is listed as a Local Server for Application Type, whereas the UniOpc documentation shows it to be a Local Service. Does anyone know any way to make the computer think that OPCEnum is a Local Service rather than a Local Server?? Thanks in advance! Fred
  24. Hi: I am a brand new user of Unitronics' PLCs, and I have a brand new V350 on the bench, connected and communicating. I have identified the hardware through the Hardware Configuration window. I have places some sample objects on the "Start-up Display" window. I am trying to download the project to the PLC, and when I select "Download", the progress window opens, and then I get the following message: (pop up window with the title "Erase Project From the PLC (373)" ) This PLC contains DLUs Backup in the FLASH Memory. This Download will erase the DLUs Backup from the PLC. If you continue this Download, you will not be able to Resture DLUs on Battery fail. Do you want to continue? The Unitronics has not had anything downloaded to it yet. I am connected via Serial port, and the cartoon assembly of the logo continues. What is/are DLUs Backup? Is this important? Thanks for any and all responses!
×
×
  • Create New...