I have a similar problem. I'm using some TOD-variables to schedule some things. Now I wanted to integrate them in HMI, I tried the approach below. However, I found no possibility to convert TIME to TOD. Can you maybe give a hint?
@robert_n You have to create your own function block in ST (have to be switched to full mode), past the code from the example above and create an Integer new variable, which will represent the time in seconds (you can easily change it in the function block to minutes).
Then in the Main program, just pass the integer variable through the new function block to the TIME variable and you are done.
@tomas_hora Unfortunately that did not work for me because I do not use TIME variables, but TIME_OF_DAY. When I try to connect these two types, the compiler throws an error. I found a workaround to convert to TIME_OF_DAY with add_tod_time. This method means a lot of work to program the Function and HMI and it becomes slightly confusing...
@robert_n Well for that purpose, you could use one of the provided schedulers or no?
zorro_66 last edited by tomas_hora
I have tried to do the function block
But i just get "build fail."
Do I have to write any more parameter in the block or matter it works directly
FUNCTION_BLOCK IntlToSec VAR_INPUT seconds_int: int; END_VAR VAR_OUTPUT out_time : TIME; END_VAR out_time := mul_time(time#1s, seconds_int); END_FUNCTION_BLOCK
@zorro_66 is there any more info for the message Build fail?
Indicates that it is wrong in any column
But the error changes depending on where I have the cursor standing
@zorro_66 Could you share the project? That might be easier to debug...
zorro_66 last edited by zorro_66
How can I send the project to you i tried to mail but it did not work.
I can not upload this one has no privileges so it's enough
@zorro_66 Zip the archive and send me a link to google drive/dropbox or any other file sharing service...
Tomas, you've probably got a link to Dropbox and my project
Sorry it took some time to fix but i have been on vacation
@zorro_66 All input variables of a function block has to be connected or checked as not visible and set a default value. That is missing in your BD13_SwitchOffDelay of Interlocks program.
The second issue is, that in the PLC program mapping, you have mapped two programs that do not exist...
Thanks for the quick reply Tomas
Well, I know I had nothing connected to that block but did not think it was the fault.
Because it's on the position my time_Converter was supposed to enter.
Which two programs have I mapped that are not available
@zorro_66 if you double click on the error in the result table, it will usually show you where the issue is... Or just read what it says.