Jump to content

Leaderboard

Popular Content

Showing content with the highest reputation since 07/28/2020 in all areas

  1. Sadly not my joke....... My wife asked me why I was whispering in the house. "Because Mark Zuckerberg's listening," I whispered. She laughed. Alexa laughed. Siri laughed. 🙈 cheers, Aus
    3 points
  2. Actually, there is a way to have a psuedo-popup window. It's done using a little-known and poorly documented system bit - SB 25 - "Do not draw display background". I used this for the PID tuning window on an oven project. I used a V1210. Here's the display with all the loops called "Setup" called from another screen. Pressing any one of the "Tune" buttons set a different bit in an array: I have code that watches for one of bits to go on and call this rung: You will notice that the description from Unitronics for this bit is flat-out wrong. The actual operation can be found in the Help if you search for "SB 25" (include quotes). Which pops this display without drawing the background- Giving this- Note the PID Tune is now the active window and is modal - nothing on the Setup screen will respond because it's not active. I have code that uses pointers to interact with the variables on the Tuning display that is not important for this discussion, but leaving the tuning display is simple: By calling the Setup display again without SB 25 set it just blows out whatever display is there, which is normal behavior. @Patrick - I would not call this "simple" in UnitronicsLand and the suggestion of others to just call another nearly identical display is what I would normally do. I used it in this application because I needed a way to indirectly interact with a window instead of creating 22 slightly different instances of the same thing. Joe T.
    3 points
  3. I think most of you probably already know the first rule of the Assumption Club.
    3 points
  4. Twitter asks what I'm doing. Facebook asks what I'm thinking. Google asks where I am. The internet has turned into my mother. 🕵️‍♀️
    3 points
  5. Hi all, thought I'd start a new topic where anyone can post a small snippet of a method they use and are happy to share. Just initially a screenshot or link that will get the brain cells of forum participants working hard as to what it might be used for. If it ultimately gets lots of different things submitted, it might become a little clunky and need "linked numbering" here in the first post. To this end I suggest that the time turnaround is a maximum of 4 days between submission and telling the answer, unless it is already figured out by someone. The answer is then given and a new one submitted. We'll see how it evolves. I'll start the ball rolling with the next post, which I think is an easy one. 🤔 cheers, Aus
    2 points
  6. Hi all, to start explore I suggest to check HTTP REST APIs for your WhatsApp (meaning some server you address via REST calls on HTTP and it send a WhatsApp message) . For example: https://github.com/sinch/docs/tree/master/docs/whatsapp/whatsapp-http-rest https://www.twilio.com/go/whatsapp-api-90-access-1?utm_source=google&utm_medium=cpc&utm_campaign=G_S_NB_EMEA_Whatsapp_ROE_Emerging_EX&utm_adgroup=&device=c&network=g&keyword=whatsapp integrator&creative=494025116831&placement=&gclsrc=aw.ds&gclid=Cj0KCQjw38-DBhDpARIsADJ3kjkFQR_Wbmbx9w6-1AjPTuwt35VN4vhB2FmhoVPHBl-doubeTtK6WaAaAqR0EALw_wcB It possible (no guaranty, we did not saw such API yet) the UniStream REST feature could trigger it. There are HTTP REST APIs free trials you can check out to do "proof of concept". (again, no guaranty, but worth to invest a few hours to check it)
    2 points
  7. Kratmel's card.......I'm still gobsmacked when I see a TIF card with 512GB. I point out to blase youngies how much separate stuff is actually crammed into that tiny space, and they still don't really seem that amazed. How times change. And let's all remember this is the stuff that's available off the shelf, not hidden away in some development lab. John's sliderule....There was a fantastic episode of "Utopia" here in Aus a while back. An older guy was brought into the office and was checking out project costs he thought hugely excessive, in no time at all. Did it all with a sliderule, much to the amazement of all the resident experts who would normally take months to do it. If you haven't seen Utopia, it's a satirical look at Govt bureaucracy's fascination with meaningless crap, whilst actually achieving little work. So much variation in concepts episode to episode, they have to have info from actual offices in the first place! And the imitation of govt project promotional material is so spot-on. https://en.wikipedia.org/wiki/Utopia_(Australian_TV_series) cheers, Aus
    2 points
  8. I remember seeing a memory device similar to this at my first mentors workshop back in the mid '70's It was an archaic thing at that point, but I seem to remember that the memory bank included inductor/cap/resistor circuits that "remembered" their last logic state, and transferred that with some sort of FIFO logic. Crazy thinking back in those days, but we wouldn't be where we are without it.... 😵 Now, what happens when you throw one of these in front of a young'un? I still have my first TI-35 scientific calculator that I bought in the '70's....
    2 points
  9. Re the Help page woes, you all need to have a 95 year old Parent. You would have solved it in a flash. I am forever fixing computer issues he creates by having clunky fingers that click buttons as he moves the mouse around. To compound things, he "reads" with the mouse . The end result is that all sorts of internal edges and other things appear/disappear and I need another remote fix session to figure out what he's done this time. "Damn computer's broken!" "Welllll...no it's not. Just the user has stuffed something up again". I admire him persisting with using it, but it sometimes takes me ages to figure out how he's actually done stuff in the first place! The internal margins issue is very familiar to me! If you haven't noticed, in the Help window there are Show/Hide buttons directly above the pane's normal location. It is amazing how often I completely miss something as simple as this. I guess it is a case of familiarity breeds 'don't even look at what's there' with regards to menu items. But a pet parent is also a great teacher, albeit indirectly. 👴 cheers, Aus
    2 points
  10. @Cara Bereck Levy Take a look at this post, especially near the bottom- If you look at the post reference chain within thus post you'll see that the question of reading floating point values from energy meters is a very recurring theme. It's a common occurrence for word order is always backwards from what Unitronics is expecting. Ask the Creators how hard it would be to add a new type of Operation to the Registers tabs for function 3 and function 4 - "Read Holding Registers Swap Words". If you look at the Official Modbus Protocol Specification- https://modbus.org/docs/Modbus_Application_Protocol_V1_1b.pdf Search for the word "float" you will find no references. This means the byte order of an IEEE 754 floating point value is not specified anywhere and repeated questions on the forum point to the fact that it's kind of the Wild West out there as to how various manufacturers decide to implement it. Unitronics would benefit from making this easier for the end user, as many of them are unaware of this issue. This dovetails with the release of the new UniClould product as we've seen energy meters are a common addition to a UniStream system and that data will certainly be desired on a UniCloud dashboard. Just my 2 cents. Joe T.
    2 points
  11. So, the answer is no then? I noticed that if I do "Show structed text" in ladder I get a _op_op version of the tag. If I use this code, for example System: "RTC time.Seconds" in the C function I can call and use it and it appears to work. Am I breaking things by calling this code in C function?
    2 points
  12. I think that perhaps my local mower shop is still building their website! cheers, Aus
    2 points
  13. No. Modbus is a handshaking protocol and it will take too long - you're doing good if you can get 10 reads/sec with Modbus. kratmel says this device has CONTINUOUS FAST WEIGHT TRANSMISSION mode. I didn't look in the manual, but this tells me you can put it into a mode where it just sits there and broadcasts data as fast as it can, regardless of whether someone is listening or not. I've worked with scales that do this. The block kratmel is talking about is located under the FB's menu and is called "Protocol". It lets you roll your own communication - do not be afraid of it. In your case you'll set it up to listen to the serial port for whatever is coming in and set a bit when it receives something. For starters take your module and connect it to your computer serial port with a terminal program. Configure it with the CONTINUOUS FAST mode and see if you see a whole bunch of weights on the terminal program. Then you can determine how to make it work with the PLC. Joe T.
    2 points
  14. Thanks for sharing the solution. I never considered that UniApps would have different behavior than the UniLogic setting. Joe T.
    2 points
  15. You can search this on the internet for detailed explanation. It means that Integral component has maxed out over time and is contributing 100% to PID output. Maybe integral time is too slow or system cannot reach setpoint fast enough. If this makes oscillations or any other problems you can force Integral component to take some other value, there is a function block for that in PID menu.
    2 points
  16. Swervo, there are so many different styles of schematics you'll have to decide in the first place which way you want to go. To me it is personal preference. There are different names world wide for different style types. I actually hate modern style "line diagrams", "riser style" as I find them counter-intuitive and hard to understand at a glance, as you need to constantly reference descriptions. I much prefer older style where the entire layout and connections are visualised. Sometimes these are called pictorial, maintenance, schematic. This link https://www.nrc.gov/docs/ML1025/ML102530301.pdf is a good example I quickly found of most standard methods, with actual drawings starting about 1/3 through. cheers, Aus
    2 points
  17. 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, and in later years 2 additional I/O stations were added. Still it couldn't saturate the V570. Scan time under 10 miliseconds. Of course there would be no easy way of managing everything from the V570 screen, so a Z-View scada had to suffice. Over Ethernet the update time for 1700 tags (not monolithic, but scattered all over memory space) is about 0.4 seconds. One remark: the screens are really ugly -- back then I was sloppy and didn't know what "Snap to Grid" meant. We've all been kids once I guess.
    2 points
  18. One rare device in my workshop. Still in use for punch tape read-in.... :) :) :) and upload to.... FDD!!!
    2 points
  19. Joe, do you mean like this? cheers, Aus
    2 points
  20. Surprisingly, people of about the same age in different parts of the world show the same habits and behavior. The same was demonstrated by my grandmother when she came to us after overcoming more than 2 km. However, she always thought of the reason why she came. One of these reasons is special to me. She said: I came to you because you will take me home by car. 🚗
    2 points
  21. That's how I read it. Then for grins I loaded one up with (6) 16 point analog inputs and (6) 16 point analog outputs. That's 192 bytes each way: It compiled with no errors. Try playing with different configurations on your own. You're not going to break the software, and it will certainly tell you when you've screwed up. Just like people. 😁 Joe T.
    2 points
  22. Please read PID section in HELP. In your program no PID RUN fb present. Some add net needed in ladder.
    1 point
  23. Ausman's answer is very close to the solution. Therefore, we consider Number 2 solved. After all, thanks to his tips, I found a way to solve this Sometimes, even in simple task with the encoder, you need to show on the screen that the movement is right - left, or up - down. It is also important to know when the object stopped.
    1 point
  24. Yes, there is a difference. You don't need the additional SET coil of MB 9 on the float block. The output of the instruction is stored in MB 9 as you've shown. Your logic as written will always set MB 9. Your INT compare is correctly done. Joe T.
    1 point
  25. The current version of UniLogic is 1.31.146. Download that and update the OS on your PLC. You should be getting a free trial UniCloud account. It should work after your PLC is updated. Joe T.
    1 point
  26. I never use the built-in alarms function on the PLC and prefer to use my own. I started programming Unitronics PLCs before the Alarms function existed and just continued to use my own creation.
    1 point
  27. I moved this thread to the correct forum. For coils, the DECIMAL address should be the same as the MB number, with the proviso that Unitronics addressing starts at zero whereas the MODBUS standard (and Siemens iirc) starts addressing at one. Therefore when addressing from the Siemens Master, add 1 to the MB number to get the correct decimal addressing for the master.
    1 point
  28. Yes that is MODBUS convention. Assuming your Raspberry Pi follows that convention, it should work. Did you try it to see? When in unfamiliar territory I like to Store Direct SI 30 into an MI just above the vector being read (MI 0 in your case). This will immediately tell me if I have an "off by one" problem.
    1 point
  29. I couldn't resist - State Machine! Download the program file and see if you can follow what I'm doing. It's in Visilogic 9.8.80. You've described a four-step sequence with different actions of the same input based on where you are in the sequence. Trying to do something like this with contacts and coils can make your head hurt. The style of programming in the attached file is based on a computer flowchart. Joe T. NickButt Program.vlp
    1 point
  30. You're sending the request 10 times a second in rung 2 without waiting for the sensor to reply. I'd block the SEND block with a NC of MB 2 and reset MB 2 with a NO of MB 4. You'll also have to reset MB 4 yourself. It looks OK, but I'd follow Aus's recommendation and check it with a terminal program on your PC that is capable of displaying raw hex values such as Bray's Terminal. You'll need a USB to RS485 adapter as well for this. I'd go ahead and download it. You're not going to break anything. If you don't have a second COM port installed in your V130 you need to do that - either a serial port or an Ethernet port so you can go online with the PLC. Otherwise you'll be blind trying to troubleshoot your program. Joe T.
    1 point
  31. (As I clicked post, Flex answered with a pretty picture!) It all depends on how it is currently set up to change the value. For your need you would normally control the number through ladder work. The button(s) would be linked to a timer that upon timeout through holding the button on, it adds/lessens the value in question in a controlled way, eg increase of 1 per scan (very fast) or increase of 10 per second, etc etc. Further to Flex's answer, it shows the myriad ways you can do things. His method is a fixed time, I do it by having a number of timers that increase the rate the longer you hold the button. cheers, Aus
    1 point
  32. Looking quickly at the specs, the simple way that you may have overlooked is to use one of the clock's relay outputs to activate at a given time second or minute, and this relay close is run to an input on the 130. The 130 then registers the rising input as "I need to set the time to 05:00:00", say. This method does not need any networking protocols etc at all. The downside is that there is no real "truth" in the setting, it relies on the plc's RTC being reasonably close to the time. But given that this could essentially involve 24 hours, the likelihood of error is minimal. I often incorporate time adjustment into programs I do that need to be fairly accurate. I carefully monitor the plc over months and see what drift the RTC is doing. At a suitable time period I add or subtract "x" seconds to bring it back close to real time. The same sort of thing would be done here. I'd suggest you do it at the latest hour turnover before anything needs to happen at school, and then it will be close all day. The most drift I've seen in a 130 was about 4 minutes a year, so an update every day would easily cover your situation. The logic here is 4 x 60 essentially = 240/365, which is a negligible error in a single day. Especially given your system is probably only working in 12 hours of that day which means even with rounding your 130 clock will be perfectly in sync on seconds with the master. cheers, Aus
    1 point
  33. Further to Kratmel's good advice, it is worth saying that many modbus things will not communicate to Visions at greater than 9600. It is always worth starting slowly and trying bigger baud rates after getting things working ok in the first place. I also note you have 2 stop bits. ?? I'd also make your timeout bigger, along the lines of the previous baud rate comment but in this case it is start big and reduce. Why, and how, are you working MB107? cheers, Aus
    1 point
  34. Hello, The observed delay is due to the fact that DTI file is now digitally signed. Starting from next UniLogic version (1.31), the "Store DTI to file" will include a new input controlling whether or not the file should be signed, which will give you a way to suppress that delay. Have a good day!
    1 point
  35. Kratmel, I think the need is for the blink speed to increase as the timer runs. So as the timer nears finishing it is blinking quickly. Alighz, I would be doing this using a toggle coil whose input is controlled by a self-resetting count that reduces the reset number as a direct inverted linearization of the total timer time, as the time elapses. Also be aware that ideally you can't use a relay output for this, transistor output would be preferable. Plug away at that concept and see how it goes. cheers, Aus
    1 point
  36. Hi, When use mechanical switch, then it's contact(s) "bounce" when fast change it's position. Normal Digital Input has internal filter, which "neutralize" contact(s) bouncing.HSI has no such filters. You can use button on PLC display to start timer and generate fixed length output pulse. Use this pulse as input for high speed counter. Then everything should work as supposed. B.R.
    1 point
  37. Modbus TCP would be the way to go. Get an Ethernet card for the V430 and set it up as a Modbus Slave. I did a quick search an found a Python Modbus library called pyModbus that should work for you. Joe T.
    1 point
  38. Ohhh yeah, another thing, Can anyone suggest a way for me to remember what a mnemonic is? cheers, Aus
    1 point
  39. Ausman/Kratmel, Thanks to you both! I've just updated to OS 5.04(B64) and the ET2 is working (and also appears in the Info Mode Page 6 Many thanks to both of you for your help! -Steve
    1 point
  40. I hate to interrupt, because you're on a roll, but how about this: Wedding vows for the bride should include: "Do you promise to always help him find his stuff that is right in front of him?" Because you will be doing that forever!
    1 point
  41. I have a good suggestion. Whenever I am developing a project for UniStream, like most programmers I will be updating and downloading, and testing, frequently during program development. Unlike VisiLogic, UniLogic insists that the project be compiled and compared to the project in the PLC before going online. This can take some time. However, if I've just downloaded the project, then all that has already been done and now I must wait for it to do it again. How about adding a selection or checkbox, or something, to the download options that when selected allows UniLogic to immediately go into online mode after the download, thus saving that lengthy repetition?
    1 point
  42. I believe you should see SB 148 ON when you are connected with Remote Operator (assuming you are using the default Socket 1 for PC-PLC communications).
    1 point
  43. A Samba really doesn't have the horsepower to push a servo system. I would use a V700. Don't shoot yourself in the foot based on price. Other than that all you need to do to drive servos is add a CANbus card and download Visilogic 9.8.90. You can add an -EX3 snap IO card for up to four thermocouples on the V700. Joe T.
    1 point
  44. Permanently run remote access or remote operator on the PC and tuck it away in a little used corner of the desktop? Or....have a look at UniDDE, or perhaps UniOPC https://unitronicsplc.com/Download/SoftwareUtilities/UniDDESetup_1_3_6.exe DDE will likely give you the basics of what you want, but you might need a little script running to cycle things periodically to fully achieve your needs. So you'd have a little excel window running and updating with just the info you want visible. cheers, Aus
    1 point
  45. The "plugged-in" aspect of the laptop is VERY important. When you're on battery, everything is isolated. When you're plugged in, the negative of the power supply and everything else (including the USB port) is grounded through the neutral and that will often kill communications. Joe T.
    1 point
×
×
  • Create New...