Jump to content

zed

Members
  • Posts

    27
  • Joined

  • Last visited

About zed

  • Birthday July 1

Profile Information

  • Gender
    Male
  • Interests
    Automation, Robotics, Food Manufacturing Equipment, Hygienic design, Kiteboarding, Wakeboarding,

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

zed's Achievements

Member

Member (2/4)

0

Reputation

  1. Just after posting that I noticed the description for the autotune done bit. "Reset by user" and thought, Oh I didn't do that, maybe that's why i'm having problems, but when I tried it won't let me reset that bit using either reset coil or reset numeric. or store function. Seems to be read only.
  2. @Flex727 Well now that's odd. I'm using Unilogic version 1.33.373 which is the latest, last I checked and when i "update help file" it tells me that it is up to date. Here's my help file page: No "2".... From your sheet 1,2,3 would seem to indicate the current number of autotune cycles which makes sense but I can also say that in my case autotune was not in progress at the time. Something is fishy. I'll have to keep watch.
  3. @kratmel, In my system AT does not produce the same results for coefficients nor would I expect them to given my system. Its a heat exchanger system with a fairly long residence time and the application is in the food industry cooling various types of sauces used in meals all of which have different specific heat capacities, densities and flow rates. I don't incorporate any sort of feed forward control for flow changes however in a given day flows are relatively consistent. I find that being careful to tune for a laminar flow with a medium to high flow rate sku works adequately for all skus. Not perfect but very hard to expect perfection with this application. I do have some products where the capacity of the cooling system is not enough to cool to the setpoint and as such the output will be at 100% most of the day. I guess i'm expecting that when the run PID block is disabled, any windup or saturation would be cleared. Maybe i need to reset this manually (using logic) at the leading or trailing edge of Run PID? Oddly, in the frozen at 100% case above, the Integral error was zero, which I think indicates there was no windup present? @Flex727 I also have the status integer displayed. Problem is it shows "2" for which there is no definition in the help file. Also during the freeze event I was able to go online and confirm that the Run PID block was indeed enabled.
  4. Hello,, I'm using a 3 wire RTD as an input which has a range of -200C to 850C. The integer value is x10 (1 decimal place) so for example 20C would be an integer of 200. Should the Input limits be set to -200 to 850 or -2000 to 8500? What is the effect and proper way of setting sample time? In the config struct there is a STATUS tag. The help file decodes all the numeric values but my status tag indicates "2" which does not have a definition in the help file. There is a -2 but not a 2. So what does 2 mean? Is there a formula for the Cp, Ci, Cd influences? Just noticing the tags for each do not seem to add up to the CV. Also wondering the impact to control for the integral setting. For example if the integral is 5 seconds, what would be the impact if changing that to 10 seconds? To 2 seconds? I guess that's why i'm asking if there is a formula because that would give me the answers. I can of course google it but it depends on how the manufacturer applies it. Proportional band vs. proportional gain or integral time vs integral rate. Lastly, I had a PID loop freeze up on me and i have no idea why. Its been in service for about a week working fine. Then after the weekend it would not respond and was stuck at 100% output even though the the PV was well below the SV (cooling application). Cp, Ci, and Cd values were not changing. Integral error was zero (no wind up). The only way i recovered control it was to run the AT again. very odd, just wondering if anyone has encountered the same. Thanks
  5. zed

    Modbus V2.0

    Yep. When switching it to V2 in uniapps it will just detect the the version is not the same as the project on the next download. You can select to overwrite it or not but the path you show above Joe is how to set the project to V2 thus it will stay that way. I found it and went to post it here but you beat me to it. On a related manner with the same behavior, you can find screen saver settings for the project in the solution explorer, Hardware config/ Controller Model. You can also set these in uniapps but then it won't match the project on the next download.
  6. zed

    Modbus V2.0

    Found it. In Uniapps in bottom Network tab then Modbus then top Debug tab there is a button: Turn Legacy OFF and a notice: After changes please reboot the PLC
  7. zed

    Modbus V2.0

    Nope. Didn't work. I get the same warning.
  8. Upon compile I get a warning: Modbus v1.0 (Legacy) is used in the application. It is recommended to switch to Modbus v2.0 How do I make the switch? I began the project in an older version and created 4 Modbus slaves and later installed the latest Unilogic version. Would I just need to delete the existing slaves and create new ones? Thanks
  9. So if I want to uninstall an older version (no longer used or just to save disk space) would I just delete the folder (ie)Unilogic_1.31.125.0 ?
  10. Hello, I've been using this router with a Unistream PLC for some time now. Its a headless PLC so i'm just using any tablet with VNC as a remote HMI connecting to the router's LAN wifi. The router isolates the machine's internal network and connects to the building wifi network for access to the internet and a SQL database. The PLC has a wired connection to the LAN side of the router. The Router is set as a Modbus TCP client and the PLC polls it every 10 sec to verify it has obtained a WAN IP address. There is no cellular or sim card function. Three issues present. 1. During development phase I had no issues with WIFI signal strength and connection to the tablet even though the router and its antenna are inside a stainless enclosure. After placing it in production i would constantly get signal drop outs. The signal strength does fade it just drops out completely and on the tablet I have to wait for the wifi signal to come back and then reconnect the VNC. Sometimes by the time i get reconnected the signal would drop out again. I think its just due to the noisy (electrical noise) environment. I relocated the antenna outside the box and there was considerable improvement but I am still getting signal drop outs. Is a mobile machine in a washdown food manufacturing environment. 2. Every second modbus com to the router fails with an error number of -11. Even so, it does what I need it to do but that error code is funny and it kinda bugs me and I wonder if it might be related to the signal drop outs. 3. In unilogic there is a "router init" block. I'm not sure what its purpose is as there is no help topic on it but I think I would only need to use that if I were using sms messaging or cellular features I have updated the firmware on the router but that did not make any difference. I have not updated to the latest unilogc version yet as did not see any related items in the release notes that might help. Any insight or tips would be appreciated. Thank you in advance.
  11. Hello, What is the intended purpose and appropriate time to use the "Rebuild all" and "Reallocate Memory" functions on the unilogic PLC tab ribbon? Nothing in the help file so I figured i'd ask someone smarter Thanks
  12. Hello fellow UL fans, I'm looking for some help or an example for using the TCP Rx ladder function. I have a sense of how to trigger COM Rx for a serial connection by looking for an ASCII control character such as CR or LF but not sure how to do this for a TCP Rx since the system struct for TCP client is different (snip below) than the USB serial struct. The help file contains very little on the subject and I was not able to find anything on the forum and my comms experience is rather limited. I'm also wondering how the TCP Connect ladder function should be executed. Should that be triggered only once (edge trigger or set in/reset out) and await connection or should it be triggered continuously until a connection is established? In my application the PLC is the TCP Client and the TCP server is a checker weigher which will send individual pack weights as they pass over its load cell in the form of <STX>341.6<ETX><cr><lf> where 341.6 is weight in grams. Packs are weighed at various speeds from 30 to 120 per minute. Kind regards,
  13. Hi Weert, Just FYI, I'm no expert, I just saw your post when searching for answers on something similar and thought i'd try to help. I would recommend setting the Router to modbus TCP slave. In unilogic modbus is handled a couple different ways and the manual does a decent job of explaining it. I would recommend setting the PLC up as a modbus TCP master and using the periodic function. You could use aperiodic, which is controlled by PLC logic, depends on how often you want to obtain the data from the router. Aperiodic is good for immediate reads or writes but you'll have to set up a pole timer in your logic if you have more than one aperiodic trigger so that there is at least 50ms between them. In the periodic table set under in the read/write registers tab fill in the required fields. Don't use read/write multiple as the UCR does not support this. Assign tags to the data you are trying to obtain and ensure the data type matches what is in the router (typically 16bit INT). You can specify an array if you want to read more than one register so long as the addresses you want are in sequential order. The UCR manual has a section explaining the modbus register addresses for all the different data points. Enter the starting address and if you are using an array it will read the next addresses for the length of the array. There is a maximum read length (i think its 16 registers) so of you are reading more than that just add another periodic row and start where you left off with another array. If you are just trying to read a few scattered data points then set up a row for each one separately instead of using an array. If you are trying to control the UCR over modbus you will need to "write" to the registers. You should also check that the UCR supports that command (I'm not sure because i only needed to read) . Use ladder logic to control the content of the tags. I've done this with unilogic PLC and UCR B4. I'm just reading a few registers every second or so. My issue, that i was originally searching for an answer for, is that every second comm would fail with modbus error 11 which seems to be specific to routers. I'm not sure why its doing that. Everthing works i just get my data every second read. Its just something i want to eventually figure out for my own sanity. Cheers
×
×
  • Create New...