Jump to content

curtharrington1

Members
  • Posts

    45
  • Joined

  • Last visited

Everything posted by curtharrington1

  1. I am controlling a VFD via modbus where there is a forward bit and a reverse bit in a command word. I need to implement logic to set/reset the bits based on the direction the VFD needs to move and I want this logic to be wrapped up in a single user defined function block using an enum as the input to protect against invalid arguments being passed. I'm not sure if there is a way to do this but I've tried using the clunky LIST feature which did not work. I know some of the UniLogic supplied blocks do this. Does anyone have any thoughts on how to do this?
  2. Try this: load a blank project with the new firmware onto the PLC make a blank project with firmware 1.32 and generate the application and firmware files to a DOC (USB stick) insert USB stick into PLC Go to UniApps Go to Upgrades check the "Forced" checkbox and tap "Upgrade Firmware" update application when firmware update is complete Now create blank application and new firmware files on a DOC Update the PLC's firmware then user application You should now be able to load the desired application with new firmware onto the PLC
  3. The PLC CPU and HMI CPU are separate units. There is a latency between ladder and HMI which can cause a noticeable when executing load screen actions from the ladder. It's best to do all screen navigation from the HMI widget's Action dialog:
  4. I noticed I am getting an error after every download in UniLogic v1.33.348 which looks like this: The program downloads to the target and goes online after hitting ok. This seems more like a nuisance than a critical issue at the moment, is there anything I can do to fix this?
  5. Example: I want to start a trace on a tag used for the analog output to a VFD and the analog input for the motor feedback but I only want trace to be active when the tag for the motor enable (digital output) is true. B&R's automation studio has trace trigger configuration settings for trigger on, trigger off, on delay and off delay which are very helpful for solo troubleshooting of complex systems.
  6. Is it possible to configure scope trace triggers to start/stop the trace? This would be handy for troubleshooting.
  7. You can use lists as an argument for the "for each" loop without having to manage the max iterations of a typical for loop. Here is a quick example of the for each with a list: Current Item tag is a local tag similar to this C example: bool list[10]; int PE_Active = 0; // INT16 in UniLogic for (int index = 0, index <= MAX_INDEX; index++){ if(list[index] == true){ PE_Active += PE_Active + 1; } }
  8. The lists are used for the new "for each" loop features: search for "Loop functions" in the help files for info
  9. From the HMI editor you can add text after a numeric display: if you need a more customized exponent display build your own in the custom control or :
  10. You can also make a custom control to use on multiple screens. This is nice because if you need to change something on that layer in all of the screens you made, you only need to modify the custom control. I use this for my general header bar that has the navigation and some other icons which is used on over 60 screens.
  11. You could do it like this to make it more instantiable: You pass in the reference to your PID instance, the setpoint, and the process variable and then operate the PID block. The function block treats a struct input as a pointer reference so you should see your multiple PIDs working with very little code writing
  12. Did you create unique PID structs in Global? In this image, I created 2 separate PID config structs with one common Autotune Parameters struct which (if you wanted to) you could use to for both PID:
  13. How are you trying to connect? Ethernet cable or USB? If ethernet, can you ping it using windows command line?
  14. Seconded, B&R plc's allow you to scope bits
  15. Unfortunately the best we get is a tool tip when you hover over the input/output of the block
  16. Click on the function tab at the bottom of the screen Click on Function_In or Function_Out Click on the member you want to rename to get the popup window This does not rename the inputs/outputs on the function call used in ladder (A,B,C,D,etc)
  17. It looks like you're IO bus isn't detecting any units. Try reseating the CPU
  18. Unlilogc is tag based unlike Visilogic which is address based. Unilogic may rename imported tags with a "_1" postfix if the tag name already exists in the program.
  19. My wish list: It would be great to improve the help files. For example the string functions are not well documented in the help files. I don't use them often enough to remember exactly how they work so it would be nice to access the documentation of those functions in the help files. link every function to the help file location, this can save development time and training time. It would also be great to be able to trend/trace boolean tags without having to convert a boolean to an integer. Add logic functions (AND, OR, XOR) that use boolean tags instead integer tags. The Bottom Window system is infuriating: If the bottom window is on Auto-Hide, I have to mouse over the tab to show the window I want to see like Watch or IO. The window will change if I mouse over a different tab while mousing up to the window I intended to interact with. It would be better if I had to right-click to select the tab rather than mouse over. Again, if the bottom window is on Auto-Hide and I want to dock it while the desired tab is displayed, docking the window changes the displayed tab to something else with no rhyme or reason. The window should continue to display the Watch Window when I click to dock the bottom window instead changing to the IO tab. Display the IP address of the plc I am connected to while online with the plc. I work with systems that use multiple UniStream PLCs connected to a switch, it would be helpful to see which one I am connected to. For further reference, I remote into customer sites and I may not have a set of eyes in the PLC screens to use the locator tool. I have attached two conceptual pictures for USB and ethernet connections in online mode
  20. Here is the format if anyone is interested: [Trend Tag] [min range] [max range]
  21. To build off of Flarc: Open the source code you want to reference rename the subroutine/function right click on the renamed subroutine/function and click "Add to Library" close the project without saving Open the desired project go to Library/Ladder/Functions find the renamed function and right click click on the module you want to drop the function into Now you can compare the code from the old project and the new project. Delete the renamed function when you're done and clean up and tags added when you imported it and you should be good to go
  22. Did you install UniLogic V1.33? If so, that install upgraded your SQL server from 2012 to 2019 which will make any project that laptop touches (V1.32 and older) unable to open on a computer running without SQL Server 2019. Check the SQL Server version installed on the laptop, if it is newer than 2012 then download https://www.unitronicsplc.com/Download/WebUpdates/UniStream/UniLogic_SQL_Updater.zip and run the tool to update SQL Server on your other computers
  23. UPDATE Bridging the ethernet and Wi-Fi together worked. All of my DNS settings were correct and the system is working as intended, thank you Gabriel and Ausman for the great suggestions.
  24. I am heading on site tomorrow to set up the bridge. Industrial PC is used for remote monitoring of PLC's and pushing updates
  25. We use the industrial PC to remote into the site to look at the machines PLCs in runtime. The 5" UniStreams are on the production machines and the 7" UniStream is to gather data via modbus from the machines and then send an email in the event of an alarm.
×
×
  • Create New...