Changes for page 05 Lua Script

Last modified by Hunter on 2026/10/23 11:34

From version 22.1
edited by Hunter
on 2026/10/14 16:15
Change comment: There is no comment for this version
To version 33.1
edited by Hunter
on 2026/10/23 11:33
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -726,7 +726,10 @@
726 726  
727 727  = 29 Graphics Drawing =
728 728  
729 -The example shows drawing a snow and a star on the HMI screen with drawing function from Lua Script.Please note that  use PI version 10.6 or higher to open the project.
729 +This demo shows how to draw static graphics, such as a snowflake and a star, on the HMI screen using Lua custom object.
730 +The drawing coordinate data can come from HMI internal registers or external PLC registers.
731 +This demo does not demonstrate dynamic path updates or motion animation. For dynamic trajectory visualization, refer to the [[Lua curve>>doc:PIStudio.09 Lua Editor.Lua Script.WebHome]].
732 +
730 730  [[Download link>>https://ftp.we-con.com.cn/Download/WIKI/PI%20HMI/Demo/Lua%20Script/Graphics%20Drawing.pi2]]
731 731  
732 732  
... ... @@ -791,3 +791,112 @@
791 791  {{/code}}
792 792  
793 793  [[Download link>>https://ftp.we-con.com.cn/Download/WIKI/PI%20HMI/Demo/Lua%20Script/PrinterTCPSocket.zip]]
797 +
798 += 35 SFTP Client(PI 11.4) =
799 +
800 +This example shows how to set up the SSH connection between HMI and server, and upload or download the file. **This function only works on PIStudio version 11.4 or above and PI8000ig or PI9000ig HMI.**
801 +
802 +{{info}}
803 +Refer to the Microsoft official guide for installing and enabling OpenSSH Server on Windows using PowerShell: [[Get started with OpenSSH Server for Windows ~| Microsoft Learn>>https://learn.microsoft.com/en-us/windows-server/administration/openssh/openssh_install_firstuse?tabs=gui&pivots=windows-server-2025]]
804 +
805 +**Make sure TCP port 22 is not occupied by another SSH server, such as Bitvise SSH Server.**
806 +{{/info}}
807 +
808 +~1. Run PowerShell as administrator. Enter Get-Service sshd in the PowerShell window. If the status is Stopped, enter Start-Service sshd to start the service.
809 +
810 +{{code language="powershell"}}
811 +Get-Service sshd
812 +Start-Service sshd
813 +{{/code}}
814 +
815 +(% style="text-align:center" %)
816 +[[image:checkstatusSSH.png]]
817 +
818 +{{info}}
819 +If the SSH connection cannot be established, check and adjust the firewall’s inbound and outbound rules. Enter following command in powershell
820 +{{/info}}
821 +
822 +{{code language="powershell"}}
823 +netsh advfirewall set allprofiles state off
824 +{{/code}}
825 +
826 +2. Change the server IP, username and password.
827 +
828 +(% style="text-align:center" %)
829 +[[image:SSH1.png]]
830 +
831 +2. Change the server file path and HMI file path as user wanted.
832 +
833 +(% style="text-align:center" %)
834 +[[image:E2.png]]
835 +
836 +3. Click the Copy to copy the file into flash(user:) path from the pen drive path, then click SFTP connect, click Upload or Download button.
837 +
838 +{{warning}}
839 +File operations are only supported under the "user:" path for the moment.
840 +{{/warning}}
841 +
842 +(% style="text-align:center" %)
843 +[[image:sf.png]]
844 +
845 +4. Check the file whether download or upload successfully.
846 +
847 +(% style="text-align:center" %)
848 +[[image:8217Wc3rju.png]]
849 +
850 +[[Download link>>https://ftp.we-con.com.cn/Download/WIKI/PI%20HMI/Demo/Lua%20Script/SFTP%20Client.zip]]
851 +
852 += 36 Wechat Official Account Notification Push =
853 +
854 +This example shows how to set up the Wechat official account sandbox to test the alarm push.
855 +
856 +[[Wechat Official Platform Sandbox>>https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index]]
857 +
858 +To register a formal WeChat Official Account, please forward to:
859 +
860 +[[Weixin Official Accounts Platform>>url:https://mp.weixin.qq.com/]]
861 +
862 +~1. Login into the platform, and user can see the appID and appSecret, copy them for the further use.
863 +
864 +(% style="text-align:center" %)
865 +[[image:wechataccount.png]]
866 +
867 +2. User can scan the QR code on the left side to subscribe push notifications. And copy the Wechat ID.
868 +
869 +(% style="text-align:center" %)
870 +[[image:wechatID.png]]
871 +
872 +3. Click [Add test template] to create a new notification template.
873 +
874 +(% style="text-align:center" %)
875 +[[image:wechatTempalte.png]]
876 +
877 +4. Enter the title and content, then click submission, the content must follow this format: text: ~{~{text.DATA}}
878 +
879 +For example, use Alarm: ~{~{Alarm.DATA}}. For multiple lines, format the content as follows:
880 +
881 +{{code language="lua"}}
882 +Device: {{Device.DATA}}
883 +Alarm: {{Alarm.DATA}}
884 +Time: {{Time.DATA}}
885 +{{/code}}
886 +
887 +(% style="text-align:center" %)
888 +[[image:wechatTempalteConten2.png]]
889 +
890 +5. After the template is created, copy the template ID.
891 +
892 +(% style="text-align:center" %)
893 +[[image:wechatCopyTempalte.png]]
894 +
895 +6. Paste all these IDs(appID, appSecret, wechatID and templateID) into the lua script.
896 +
897 +(% style="text-align:center" %)
898 +[[image:wechatscriptcopyID.png]]
899 +
900 +7. Trigger the alarm condition, and user will receive an alarm notification from the WeChat Official Account.
901 +
902 +(% style="text-align:center" %)
903 +[[image:WechatResultResize.jpg]]
904 +
905 +[[Download link>>https://ftp.we-con.com.cn/Download/WIKI/PI%20HMI/Demo/Lua%20Script/WechatAlarmPushNotify.zip]]
1792547572135-677.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +41.0 KB
Content
8217Wc3rju.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +50.8 KB
Content
E2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +154.6 KB
Content
EYGRzMYrhy.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +171.9 KB
Content
SSH1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +190.6 KB
Content
WechatResult.jpg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +163.7 KB
Content
WechatResultResize.jpg
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +29.8 KB
Content
checkstatusSSH.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +15.5 KB
Content
sf.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +298.4 KB
Content
wechatCopyTempalte.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +22.9 KB
Content
wechatID.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +41.0 KB
Content
wechatTempalte.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +23.1 KB
Content
wechatTempalteConten.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +46.9 KB
Content
wechatTempalteConten2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +48.4 KB
Content
wechataccount.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +70.4 KB
Content
wechatscriptcopyID.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Hunter
Size
... ... @@ -1,0 +1,1 @@
1 +245.5 KB
Content