Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by kvlada

  1. Bump. How about adding a new UniStream PLC, let's call it "Secondary" which talks to "Primary" PLC via Modbus TCP, and displays the screens according to your liking? That way, the "Secondary" has the role of a simple HMI screen, reading values from "Primary", and sending updates when a variable is changed or a button is pressed. While the "Primary" controls the process.
  2. I've noticed that when a MM:SS timer is shown, Remote Operator displays the timer in 00.00 format (with a decimal point, instead of a colon), like it's SS.hh. Are there any plans to fix this? Right now there's no way of knowing if a displayed timer preset button refers to minutes:seconds or seconds:tens-of-miliseconds.
  3. This is where I found out there's literally no end to how much I/Os you can cram into a V570. The year is 2011, my first medium-scale PLC project. It was an animal food production plant. There was about 200 I/O points at first, and later the system grew to about 250. Also numerous weighing scales and temperature measurements. When I found out that there would be no way to put any more than about 100 I/O points via Unitronics modules, I had to resort to Turck's CANopen I/O modules. These pack a respectable number of terminal blocks per square inch of panel space. It all worked flawlessly,
  4. Drawing good looking screens in Vision series is hard, yo! I've found that Inkscape is more than sufficient (and free!) for creating pixel art from vector images, and that it's better to have nearly all the elements drawn in the background, and then just overlay a few simple vars. This is a small-scale weighing and mixing plant, automated in 2018. V1040 is added later, when the customer decided to put some brains in the system.
  5. Back in 2011 I've come to the conclusion that V570's hardware is a beast, and that no amount of ladder code would be able to fill it completely. So in 2014 I did a project with 3 V130, which are supposed to have the same CPU and memory power as V570, only in a smaller, cheaper package. This is a small automation project involving few mixers and some material flow management. We have 3 PLCs, talking to each other via Ethernet, and a supervisory computer. Everyone loves to have a shiny 24" monitor, but paying more than $500 for a Scada package couldn't fit the budget, so Z-View SCADA was th
  6. Back in 2010 (or was it 2011?) I was really wanting to have a simulation mode on Vision PLCs. Because it would help to test an application without having the PLC. Since that wasn't possible, I proposed an idea that Unitronics rents time slots to actual PLCs connected via Internet. That way programmers would be able to test their code on actual hardware. I know, I know, PLCs are supposed to be serious business, and it's often mentioned that you can buy: 1 x V120, 1 x V430, 1 x V700, and 1 x V1080 for the price of a Siemens software license and a set of genuine programming cables. Here
  7. Bump. I'd recommend installing a tiny Windows program called NegativeScreen which easily lets you assign display color modification to shortcut keys. That way you can make all your apps and UI work in white mode, and switch to dark mode globally. Color images would be affected of course -- they'd become negatives -- but you could do some real neat things. Like, make your screen red and black, the night vision mode usually associated with astronomers. I've attached the screenshot of this forum page to get an impression. ;)
  8. This sounds like a good idea. All screen buttons have a Disable bit if there's no user logged in. In every screen I could place a tiny button at the top, which is hard to be pressed by a local operator (because it's only 3x3 pixels wide for example). But it can be pressed using Remote Operator (because screen is bigger, and there's mouse). Remote operator presses the hidden button, enters the password, local user doesn't see the password because it shows as ******, and it enables, say, 5 minutes of PLC use. After that the Remote operator presses the tiny button again and locks the panel.
  9. I'm having a very interesting issue that requires creative thinking Imagine having 3 - 4 Vision PLCs with a touchscreen, working in the field, which are all connected to Control Room via Unitronics Remote Operator software. I want for the Remote Operator to be able to use the PLCs, but for a local operator to have no access - only view screen contents. PLC should not accept any touches. So, the Control Room operator has all the HMIs on his computer screen, and can do whatever he wants on the PLCs: click on buttons, enter variables, change screens, etc. But a local operator can
  10. In IoT projects, one of the most common problems I've encountered so far was Remote Access. Usually I have to connect a modem or a specialized WiFi/LAN gateway, and then configure DDNS, and setup some firewalling to be able to safely access PLC over the Internet. Wouldn't it be great for Unitronics to have a kind of own cloud service, which would allow a remote access to a PLC, regardless of their internet connection? Something similar to what Secomea is doing. You buy a subscription from Unitronics, and for example, $50/year you can access up to 20 different PLCs worldwide, through
  11. Bump. I was curious too, but couldn't find any data. So far I've found that: - SI280 is a read-only register. Writes to it are ignored. - SI280 is incremented every 60 seconds while PLC is powered on. - SI280 increments even while PLC is in Stop Mode. I'm not sure the wording in the description is correct. "OS init" is when all memory registers are reset to 0, and I've had multiple Vision PLCs working 24/7 for many months without their memory getting reset.
  12. My fear is that somewhere, some crazy team of open-source enthusiasts will make a Soft-PLC Linux Distro for Raspberry Pi, and a product line of I/O shields. That would be the end for low-budget automation companies. A screenless UniStream performance for under $100? Totally disruptive.
  13. - RS-485/232 custom protocol - for digital scales, barcode scanners, etc. - CANopen - for distributed I/O modules - MODBUS TCP/IP - connecting multiple Unitroncis PLCs together - MODBUS RTU - for various slave devices, VFDs, etc - MODBUS ASCII (very rarely) - Rinstrum weighing indicators, and other exotic devices I wish there was a 4-port or 8-port I/O module with integrated protocol FB. For example: "IO-4RS2-2RS4" with 4xRS-232 and 2xRS-485 port. Configure protocols via FBs or hardware configuration.
  14. I made arrays in the struct definition. And then, defined aliases in a global var. Kinda cumbersome, but gets the job done. If I want to put more motors, just increase array length in struct definition, and copy-paste more UDFB to take care of data processing. UniStream has 2 MB memory for variables, and that's awesome. Don't have to worry about losing free space. Still, it would be really nice to be able to make arrays of structs.
  15. But I can't set aliases to individual fields in a data table. That's what I resorted to, after trying out everything else.
  16. Okay, I just got an interesting idea. Problem: Unitronics will probably never have enough time or manpower to implement a software PLC simulator. Fact #1: Most Vision and UniStream PLCs can be equipped with an Ethernet port. Fact #2: The PLC you need for application debugging is almost never on your local distributor's stock. (Murphy's law!) Solution: Unitronics makes a rent-a-PLC farm: a room with every PLC they produce, each connected to Internet via a VPN firewall. If a programmer needs a PLC to test and debug his app, he pays some hourly fee, and gets VPN access to PLC's E
  17. Is it possible to implement struct arrays in UniLogic? For example, I have a struct for a motor: STRUCT MotorData: BIT RunCommand BIT Feedback BIT IgnoreFeedback [retained] TIMER FeedbackDelay [retained] BIT Fault UINT8 FaultCounter [retained] UINT16 WorkingHoursTotal [retained] And I want to do: GLOBALVAR MyMotors: Type: MotorData[37] Because I have 37 motors to control. And then later, I want to do things like: SET ALIAS: MyMotors.RunCommand[12] = "Motor_K4-5A_Run" SET ALIAS: MyMotors.Fault[12] = "Motor_K4-5A_Fault" SET ALIAS: MyMotors.FaultCounter[12] = "Motor_K4
  18. How about: "Motion Detect" and "Deviation" UDFB. Motion detect is very useful in digital scales, where you need to watch if a specific analog value isn't changing for more than X within a specified time. Deviation is useful when you have to monitor an analog value overnight, to watch for drift, changes, etc. What happened to filtering? VisiLogic had a very nice Filter FB, which had rolling and order-weighed average filter. Also, we're still short of UniStream loadcell module. (Hello everyone! It's been like, 6 years since I last posted here. After ten large and interesting pro
  • Create New...