We have an interesting application challenge.
It's for an application that won't allow for an external mouse, keyboard or use of the touchscreen of my HMI to change the data in an input data field on our HMI.
We will have to use physical pushbuttons, or maybe a selector switch hardwired to the PLC.
We need the following functionality ...
STEP 1 - SCREEN NAVIGATION - Based on the value of the data in the PLC INPUT IMAGE table (created by the hardwired pushbutton input to PLC), this will cause our HMI to navigate to a specific Graphic screen
STEP 2 - INPUT DATA FIELD Once the specific graphical screen has appeared, I would like to use another hardwired pushbutton switch input to the PLC to advance sequentially to the first data entry field on that screen. With each depression of this specific pushbutton, the "focus" is given to the next data input object on the graphic screen. Once the correct object has been "cursored to", it must be selected somehow and then its current value allowed to be changed (if desired).
DESIRED OUTCOME - If somehow we can just be able to see how to SELECT the data entry field on the HMI screen, and then if we could change the numerical value in this field and enter this data change into the PLC's memory, then we will be well on our way to solving this application challenge.
Your comments and suggestions are most welcome!
Step1: Screen navigation: I would solve it like this:
1. Create a MainVisu with a full screen sized element "frame" https://help.codesys.com/webapp/_visu_elem_frame;product=core_visualization;version=220.127.116.11#element-property-switch-frame-variable
2. Referenz all other Visualizations to this frame
3. declare a variable and enter it as "Switch frame variable" in the element "frame"
4. set the variable to the values related to the order of the referenced visualizations, depending of your inputs
Step2: Is the usage of an encoder wheel, connected to the I/O's `with push(enter)/pull(ESC) switch an option? There are methods in the visu libraries to control the input focus similar to the tab-button from the keyboard.
We had in the past a similar request, where the HMI should be covered with bulletproof glass, but didn't realize this project in the end. As I remember, I struggeld to get the focus into an out of the codesys keypad//numpad dialogs etc... There are improvements in the SP16 belonging the tab order now. You can include/exclude elements and change the order individually. Maybe give it a try or Codesys Visusalization people (M.Prestel) have a better solution. Good luck, David
Thanks very much for the suggestion.
We will give this a try and let you know how it works.
ENCODER WHEEL - Funny you should ask! We are actually trying to help a customer eliminate the use of an ENCODER WHEEL and an expensive encoder input module. Trying to simplify their design.
the Berghof PLC we are using is so performant to read the onboard and EtherCAT I/O's every 1ms. So the encoder wheel could be wired there without any expensive module to counted and detect direction from the plc prg. Worked fine for my tests :-)
Log in to post a comment.