Mcgs Hmi Password Work -

| Purpose | Recommended Method | |--------|-------------------| | Prevent project theft | Use download password (set in “Project Properties”) | | Operator login | Use built-in User Management + login controls | | Function-level unlock | Use variable comparison + script | | Secure remote access | Avoid hardcoding; consider PLC handshake |


Instead of a single flag, use an Access_Level variable:

Right-click on your target screen → Properties → Access Control. Check "Enable Access Control" and set condition: Login_Flag = 1. If a user tries to jump to this screen while Login_Flag = 0, the system shows a “No Access” message. mcgs hmi password work

A good password system auto-logs out after inactivity. Implement this using a Cyclic Script (runs every 1 second):

' Cyclic script, event: Timer, cycle time: 1000 ms
Static LastActionTime
IF AnyTouchValue > 0 THEN   ' Simulate touch detection
    LastActionTime = SysSecond()   ' System seconds counter
ENDIF
IF (SysSecond() - LastActionTime) > 300 THEN   ' 5 minutes timeout
    Login_Flag = 0
    Access_Level = 0
    ' Optional: Jump to login screen
    IF Screen <> 0 THEN Screen = 0
ENDIF

| Name | Type | Comment | |------|------|---------| | Access_Level | Integer | 0,1,2,3 | | Operator_PW | Integer | e.g., 1111 | | Tech_PW | Integer | e.g., 2222 | | Admin_PW | Integer | e.g., 9999 | Instead of a single flag, use an Access_Level

MCGS (Monitor and Control Generated System) Embedded HMI software (often used with Weinview, Kinco, and other compatible panels) provides a robust, built-in security framework. Unlike PLC-based logic locks, MCGS utilizes a User Level and Password Database system to restrict access to specific graphics, objects, buttons, or data entries.

This write-up explains how passwords function at the engineering level, the hierarchy of user levels, and the standard methodology for implementation. | Name | Type | Comment | |------|------|---------|

| Component | Required User Level | Behavior at Level 0 | Behavior at Level 5+ | | :--- | :--- | :--- | :--- | | Motor Start/Stop | 0 | Active | Active | | Speed Display | 0 | Visible | Visible | | Speed Setpoint Input | 5 | Locked / Gray | Editable | | PID Calibration | 8 | Hidden | Visible |

Script behind the "Login" button (Pseudocode):

// Standard system function - no manual coding typically required
// However, to force a login before a critical action:
IF !LogOn( ) = 1 THEN
   // Success: Enable advanced controls
   !SetUserLevel(5)
ELSE
   // Failure: Stay at current level
   !ShowUserMsg("Access Denied: Incorrect Password")
ENDIF