MrPLC Member
  • Content count

  • Joined

  • Last visited

Community Reputation

0 Neutral

About strantor

  • Rank

Profile Information

  • Gender Male
  • Location houston tx
  • Country United States
  1. How can I communicate with a simulated PLC using FINS?

    I swapped out the CJ1M for a CJ2M and changed the HMI<>PLC interface from "Ethernet(FINS)" to "Ethernet/IP" and that dropped my comms time down to 25-45mS (avg: 31mS). I'm going to call this acceptable for now. Having the physical PLC as part of the setup is handy anyway, since I will need to interface I/O soon (joysticks, pushbuttons, etc). Thanks for the help! (I will undoubtedly be back with more "things you don't hear every day") EDIT: made some changes to my FINS script and got comms time down to 15-20mS! Very nice!
  2. How can I communicate with a simulated PLC using FINS?

    Thank you for your reply. I have used SOCK_DGRAM previously and it also works. With just the PLC connected straight to the PC, I get the same comms time whether using TCP or UDP. But when I throw the HMI into the mix, TCP comms time remains the same while UDP ( SOCK_DGRAM) gets much slower. Hence why I am using TCP instead of the typical FINS/UDP setup. I did not mention it, but the reason I am trying to move the PLC into the virtual world is because I need blazing fast data. This is for a 3D video game simulator of a Omron-controlled tool/machine, and the 3D rendering engine runs at 24FPS. Ideally I need to read and write to the PLC 24 times per second (comms time <24mS). With TCP I am getting close; around 65mS to read & write 249 words ( physical PLC, HMI, and PC in network) but in the same network configuration with UDP my comms times were inconsistent, between 200mS and 2000mS. This 65mS with TCP is passable but not ideal. I'm hopeful that by moving the PLC into CX-simulator I can get the data instantaneously with no comms time. BTW I just tried "localhost" as well as my PC's static IP and both returned this error: ConnectionRefusedError: [WinError 10061] No connection could be made because the target machine actively refused itApparently my PC takes offense to me trying to make it connect to itself
  3. How can I communicate with a simulated PLC using FINS?

    On a side-note, I halfway suspect that this 3-octet "fins address" and subsequent "fins communication" happening between all my various Omron softwares while in simulation is all just for show. I suspect that behind the scenes, what is really happening is data transfer through a shared memory range in my PC's RAM. If that's the case, and if there's a way I slip my python script into that shared memory area, that could be even more ideal, as I would have instant access to the data and not have to wait for simulated cycle time and simulated comms time. Anybody here know anything about this?
  4. I am writing a Python script that communicates with an Omron PLC using FINS commands. My script uses the SOCKETS function in Python and it works just fine over TCP. I currently have my script reading and writing to a CJ1M over TCP/FINS, but I want to put that PLC back on the shelf and move everything to the virtual world. I have been unsuccessful because my script communicates with a given IP address, not a given FINS [network].[node].[unit] address, which is seemingly all CX-Simulator supplies me: According the latest version of the CX-Simulator manual (revised in 2009), I need to have FinsGateway installed in order have my "Application Program" communicate with the simulated PLC (assuming I correctly understand what is meant by "Application Program").: I do not see this installed on my system: Some googling indicates that FinsGateway has been replaced by SYSMAC Gateway, which I also do not see installed. Googling for Sysmac Gateway yields most results having to do with CX-Compolet which I know for a fact I do not have. Is SYSMAC Gateway part of a regular CX-One distribution or is it an addon? The graphic above from the CX-simulator manual shows CX-Programmer utilizing the [FINS/SYSMAC]Gateway to access a simulated PLC. My CX-Programmer and CX-Designer can in fact access the simulated PLC, so does that mean that I already have SYSMAC Gateway installed? If so, how can I access the simulated PLC in the same way that CX-Programmer & CX-Designer does, using a 3-octet local FINS address instead of a 4-octet IP address? If not, then assuming I purchase the XXXXXXgateway (whatever it may be called by now), THEN how do I access it with a 3-octet address? Is Omron going to insist I use some Visual Studio OCX/ActiveX component? Because that is not an option. I am constrained to Python 3.4 and the native functions supported by Python 3.4, by the details of my project and I cannot implement Visual Studio. For reference, the Python Sockets command I'm using looks like this (snippet): self.sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)self.sock.connect((, self.port)) ... where AF_INET specifies the address format. I have many options for address format, including (but not limited to): AF_BLUETOOTH, AF_PACKET, AF_CAN,AF_INET6,AF_UNIX AF_NETLINK, AF_LINK ,AF_RDS ,AF_UNSPEC, etc.
  5. Strange issue with PMCR's Omron ActiveX ethernet control

    The list is in this order: Local Area Connection TeamViewer VPN Cisco AnyConnect Secure Mobility Client Connection Local Area Connection 5 <<<<<-------USB WIFI dongle, for PLC Wireless Network Connection 4 Wireless Network Connection 3 <<<<<-------Integrated laptop WIFI NIC [Remote Access connections] I've never seen the above list, and prior to you instructing me how to access it, I always assumed that Wireless Network Connection 3 (onboard WIFI) was the primary. But actually the USB dongle is higher priority than the onboard NIC. Should I rearrange my adapters? Put the USB dongle at the top? Thank you again for the free tool, and now also for the tech support!
  6. I'm using PMCR's free ActiveX control to suck some parameters out of a CJ2M and into MS Excel. Firstly, Thank you PMCR for saving me thousands of dollars with this brilliant free tool! Secondly, it works great as long as I have windows network menu (for lack of the proper name) open, but I get an "error #6000 - Timeout" if not. What I mean by windows network menu: click on the "bars" signal display in the bottom right of the taskbar, by the volume control and date/time, and the list of wireless networks pops up - that's it - as long as that list is popped up, it works just great, but if not, not. That seems strange to me, as there is no actual correlation that I'm aware of, to that menu being popped up, and connectivity. All my other applications work just fine with the menu collapsed. I'm using a small wireless router connected to the CJ2M, and a Netgear USB WIFI dongle. This isn't a big issue and I'm not complaining about a gift, but I was just wondering if anyone has experienced similar and discovered a work-around. Thank you, Strantor
  7. Then FTView just sits there when I open it. it doesn't even get to the status bar like yours. This is after upgrading to RSLinx Enterprise, where I had RSLinx classic before. Can you tell me the name of the utility that you mentioned was in the link? Thanks
  8. Hi, I'm considering trying to build myself a lathe. I already have a lot of the materials I'll need to build it. One thing I don't have, is a box full of all the specific gears to make up all the combinations of gear ratios between the spindle and the lead screw that you would find on a regular lathe. I do however have (2) 1hp 3ph induction motors and 2 appropriately sized VFDs (one yaskawa one emerson unidrive sp). I was thinking that if I used 2 seperate motors, one for the spindle and one for the lead screw, I would actually be more versatile than a traditional lathe, as I could have any ratio of turns that I want. However, I'm a little concerned about the precision involved. With mechanical gears there is no possibility of ratio of turns changing with a change in load, but with 2 seperate induction motors this would be possible. I think the problem might be mitigated by the use of encoder feedback on the 2 motors for precision speed control, but I'm not sure if that is good enough. I've installed a few induction motors & VFDs before and everything I've done has been in the wire & cable industry - i.e. motors that run machines that twist cables. The absolute speed control of the VFD + induction motor with encoder feedback has always been more than good enough for what I needed, which was pretty high tolerance in comparison to making threads @ 32tpi. That's what has me worried; I've never really put low tolerance speed control with induction motors to the test. I've got a stong suspicion that I can pull it off by gearing everything way down (I do have some gears) to increase the position resolution. It would be slow, but hopefully it would be accurate. Anybody know how well this might work? how well can the VFD maintain an exact speed, with changing load?
  9. good point. When I originally thought of this, I wasn't envisioning it being connected to a network & the internet. But, the likelihood that someone would connect it to the net is probably 100%.
  10. yes, via web. Exactly the same way a router works. When you initially setup a router, you plug into it with ethernet, type in it's IP address, and a web page comes up from which you can change router parameters. If it's secure enough for a router, why isn't it secure enough for a PLC?
  11. With my previous company, instead of using taditional PLCs, they used DIN-rail mounted Beckhoff SBCs. You could plug in a laptop with ethernet into the SBC, go to your web browser, and type in the IP address of the SBC and a web page which was hosted on the SBC would appear. The SBC was also connected via ethernet to I/O modules. From the SBC-hosted page, you could monitor the I/O, and network status. I believe all the software on the SBC was written by software engineers within my company, so if I were to buy one of these SBCs I would not automatically have that same capability. After a series of unfortunate events & much frustration today with Allen Bradley's crappy crap, I started to think about these SBCs. I was thinking it would be so damned easy to use a PLC where the programming software is already in the PLC. Just plug in ethernet, type in the IP address in the browser, and a Java-based programming page appears. No more special 300$ cable for each and every different model# of PLC. No more compatibility issues. No more fussy sofware, with fussy installation proceduress & windows version conflicts. No more memory-hogging expansive software suites and fussy licensing procedures. No more monthly patches & updates. No more going into configuration to change the backplane layout - I/O modules are plug & play hot-swappable, stackable in any order - need another one, just slap it on the end. No more staking your livelihood on the hopeful survival of a single-point failure laptop that has all your kilobucks worth of special software on it, and watching it go down the drain as someone trips over your power cord and brings it down to the deck in 5 pieces; you can use ANY computer that might be around; windows, linux, unix, mac, makes no difference - if it can display a web page and all the keys work, it can be your PLC programmer (you could even use a HMI that might be already connected via ethernet). No more need for using outdated laptops because they're the only ones with serial ports. Then I started to think, well if I've thought about it, someone else probably already has, and beat me to the punch, as usual. So I'm asking here, is there anything on the market that meets my description?
  12. I want to mount some OLMs inside a tubular strander for profibus DP communications. the strander rotates up to 400rpm. I will try to mount them as close to center as possible to minimize the g-force put on them, but they will still need to be rated higher than than 1G like the regular profibus OLM I am used to. has anybody seen an OLM rated for high g-force? thanks
  13. Setting up braking with a drive

    I had no Idea about that, thanks! Is it a seperate software than the drivewizard software that they include on a disk when you order the drive? where can I get info on that class?
  14. Setting up braking with a drive

    You mean physically reverse the wires from the dancer to the PID input of the drive? That's what I'm already doing (via a relay) when I want to reverse - it inverts the PID. That's not really what I'm trying to accomplish here, as I want the PID to the motor stay the same, with an additional output (0-10V or 4-20mA or other) which is the opposite of pid output (not PID setpoint). Maybe I can explain better what I want by comparing it to a heater PID controller. Many heater controllers have 2 outputs - a heating output and a cooling output. the cooling output comes on the PID overshoots, or when you turn the temp down, or for any reason your temp goes too high. So, I want my motor functioning the same, but I want the braking to come on if PID overshoots, speed goes higher than desired, or I turn the speed down. All that is, unless I misinterpreted what you were saying.
  15. I have a spool on a shaft that is attached to a motor. The spool is paying off wire, through a dancer, to elsewhere, where it is being pulled at a more or less constant rate, with frequent starts & stops. The motor is controlled by a yaskawa V7 drive with PID input from the dancer. I want to add braking to the setup. I don't want regenerative braking, braking resistors, or DC injection. I want to use a separate air brake. What needs to happen is the drive needs to control an I/P transducer or proportional valve to regulate air to the brake. If the dancer is going down a little too fast, a little air needs to be applied to slow the spool down. If the dancer is plummeting down, air needs to be applied pull pressure to bring the spool to a stop. If the dancer is on the rise or maintaining position then I want no air applied. Basically, whatever the drive would normally do to stop the spool, I need it to instead apply air. I though about assigning a multifunction analog output as "inverse PID" and controlling an I/P transducer or proportional valve from that, but the Yaskawa V7 cannot assign PID monitors to an output. I started looking at the online manual for the Yaskawa A1000 drive and among all it's features I can't seem to find a way to assign the inverse of PID to an output. As I interpret the manual, you can assign PID output to an analog out, & you can have inverted PID, but you can't have the drive operating the motor in "normal PID" and assign "inverted PID" to an output. It seems to me that this should be a pretty common application, so I must be missing something. So, my question to you all is, "How would you go about setting up an air brake with PID?" Am I barking up the wrong tree? What drive should I be looking at? Thanks, Charlie