Jump to content

CFBFP

Members
  • Posts

    28
  • Joined

  • Last visited

Everything posted by CFBFP

  1. Dear all In my application I have to measure the elapsed time between 2 events that can happen on 2 different timestamps on the calender. Example: What is the time elapsed between 20-01-2016 16:35:55 and 19-04-2015 14:41:22? If I can have the elapsed time value as a number that can be converted afterwards in Years, Months, Days, Hours, Minutes and Seconds, that's ok. If it can be directly displayed as a result from a End Time and Start Time Substraction, is also ok. I'm using the V350 and can display the actual time using the link to SI30 to the Variable UTC, this works. The problem is that when I store SI30 to a DW variable it only saves the seconds and not the complete time stamp (= Year, Month, Day, Hours, Minutes, Seconds) in seconds, so every 60s it goes back to 0s. As a consequence the elapsed time is corrupt: sometimes values are also negative and only in seconds, 45s-59s= negative value of course I would like to store the Start Time Stamp in DW0 as a number and the End Time Stamp in DW1 as a number and substract DW1-DW0 and save it in DW3. DW3 should then give me the elapsed time in Years, Months, Days, Hours, Minutes, Seconds. Here it gives me only seconds and wrong values. It seems SI30 is giving me the complete Time Stamp on the Display if using a Variable UTC but if you work with the SI30 and store it in DW variables it only stores seconds and not the complete Time Stamp. I would like some help to calculate the elapsed time between 2 calender events. Any help is welcome!
  2. Hi I have to program 5 openCAN Bus Commands in the right order and fast after each other. The baudrate is already on 1000Mb/s but still i have the impression the commands are coming through very slow: it takes to long for 5 simple SDO commands. How is this possible? Maybe my method of programming is wrong. The openCAN commands I programmed in Unilogic software are working cause my servomotor controller is doing what I sent as instructions using the openCAN bus. How do I know when my first commands is sent so I can start to send already the next command? If i program SDO instructions one after each other without a software delay between the SDO commands it doesn't work anymore. My SDO commands are sent as follow: 1)send first command SDO openCAN 2)wait 50ms 3)send second command SDO openCAN 4)wait 50ms 5)send third command SDO openCAN 6)wait 50ms 7)... until all commands have been sent. The method above works but is much to slow for me. When I lower the timer 50ms, the commands are not coming through anymore cause the motor doesn't execute the actions what they were programmed for. Knowing i use 1000Mb/s on the openCAN bus, why do I need still delays between the instructions? Thank you in advance for your support
  3. Hi the hardware was detected but it could not be installed, there were warnings. Meanwhile i found a special procedure under Windows 8.1 to reboot the pc for special circumstances that it does not ask anymore for "signed certifications" before to install. This worked fine and I can program with the usb cable now. If it may be also some help for other people encountering the same problem, here is the procedure: http://www.makeuseof.com/tag/how-can-i-install-hardware-with-unsigned-drivers-in-windows-8/ Thanks for the support!
  4. Hi at the moment i'm programming the Unitronics hmi/oplc USP-070-B10 using an IP connection and this works fine. However, my wireless connection for surfing the internet is no that good and now I prefer to program the OPLC using a usb cable, then i have my cable internet connection back for surfing the internet. My problem is that i can't find the right driver to communicate between pc and oplc through a usb cable. Or do I need a special programming cable? Second question: is it the mini usb connection I have to use at the oplc panel? Any information how to set up the programming using the usb cable is welcome, i can't find it in the manuals i found on the website. (Using Unilogic Version 1.9 Rev.19 on Windows 8.1) thank you,
  5. Hi this helped a lot. It is clear to me know and can use datatables fully as i wanted. It is even more flexible as in Visilogic in my personal opinion. many thanks!
  6. Hi, if will try this first, but i'm not sure if i understand fully. I still have to find out if the members of the new created struct can hold global variables or if they are only cells that i have to select with row, column to transfer them in the variable i want. As i understand now there are 3 steps: - making the datatable - creating a new struct that meets the datatable to transfer values - selecting the values with row/column and finally transfer them in my variable where if want it thank you for your answer, i let you know if i succeeded.
  7. Hi i have made a datatable with 50 rows and 5 colums in Unilogic. How can I read a row of this datatable and directly put them in my global variables? (These global variables are used in my program to do more calculations with) In Visilogic, this was very easy with the function "Read row from Datatables": you select the rownumber and had to fill in the source cells and direct them to the destination global variables. I want to do the same in Unilogic. Can someone help me? thank you in advance.
  8. Hi my question is in my Topic title. Where to find system bits in Unilogic? Do they still exist? If not how to solve? thanks.
  9. Hi is there a way to know when a CAN bus command is sent? I'm using the instruction "CANopen SDO download STR", the predefined functionblock to send a command. Cause i want to send multiple commands as fast as possible i need to know when a previous sent command has finished in the servocontroller i am working with. Now I start a timer after each command for which I know the command is certainly processed before sending a next command (in my case in need to set it 40ms, what is to slow) Someone has ideas how to handle this? thanks
  10. Hi at the end of each subroutine in the ladder program you find "RET". You can't move it to the right or place it somewhere else. I want to conditionally return from a subroutine, but I can't move this object to insert a condition. Why is it? How then to conditionally return from a subroutine? f.
  11. Thanks for the help. I tried to split out ladder/nets. However my problem was not solved. I really had to restart from scratch and I started with my problem of datatable reading as a first thing to examinate. Now it works. I continue to build up step by step to finally reach my old program. It is a lot of work, but it will be the shortest. I programmed to much at once without controlling step by step. I'm using Windows 8.1 and sometimes Uintronics shuts down. Maybe there are some issues during compiling? I really don't know. f.
  12. I'll try that way. However I do not know exactly when it is the moment to change to a new net. tx!
  13. Dear all i can't read my datatable, I'm trying to read out a certain row but it doesn't come into my variables. I use the function "Data Tables Read Row" First I tried to call this function with a ladder normal open contact and now I put it directly at the left side, so it should continuously read-out my table 'Presets' and place it in the variables. In online monitoring mode this function is called (marked in red) but the variables from the preset table are not placed into my local variables. Can't find the fault. Anyone some suggestions for me what to check? tx! f.
  14. Dear all does anyone have an example program to start off with CANopen on a Unitronics oplc to communicate with a steppermotorcontroller. (In my case it is a SMCI36/CANopen controller from Nanotech) The example program from Unitronics doesn't bring me much further. tx!
  15. Thank you very much for your answer. Yes indeed, this is lowcost and I have to take the consequences. I should choose the Samba for the smaller projects. Meanwhile I could optimize my code by removing a lot of comments and buttons in de display menu's which allowed me to complete the project i was working on. So everything is fine now. Best regards! f.
  16. Hi I have a program with 9 displays, I tried to download the program and memory is now "full". To me it is strange that the most memory is dissipated for the HMI variables, not for the ladder program. See attachment. I have about 100 buttons and input/output variables in the displays. In my project there is a lot to display and analyze. Can the memory be expanded? I can't complete my project, I think I made the wrong choice of HMI type. tx
  17. You were right, don't know why it works now. Maybe i was in a wrong tab-page. Tx for your help!! grtzf.
  18. Hi I can choose multiple operand types for X and Y, but for all other values I can't do that,. I can only select "#" or "UnS#" I'm working with Visilogic version 9.7.9. Do you have same? tx! f.
  19. Dear all when I choose linearization I can only select constants to do some math for linearization. Cause my program is using this multiple times, i have to change in each linearization the constant that could change in future projects. See picture attached For me it would be better to place the constant in a variable ie MI10 and in all linearization functions that MI10 is used. If for a reason MI10 has to change, I'll have to do this only 1 time in stead of in all linearization functions. I would like to see some help. Tx in advance f.
×
×
  • Create New...