Changes for page 05 Lua Script

Last modified by Hunter on 2026/10/21 11:55

From version 30.1
edited by Hunter
on 2026/10/21 10:40
Change comment: There is no comment for this version
To version 16.1
edited by Joe
on 2026/09/30 17:20
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Hunter
1 +XWiki.joe
Content
... ... @@ -753,150 +753,3 @@
753 753  
754 754  This example shows how to obtain data records for a certain time period and display them at an address. Please note that  use PI version 10.6.45.26070101 or higher to open the project.
755 755  [[Download link>>https://ftp.we-con.com.cn/Download/WIKI/PI%20HMI/Demo/Lua%20Script/Data%20record%20query.zip]]
756 -
757 -
758 -= 34 Ethernet A4 Printer =
759 -
760 -This example shows how to print A4 report paper directly from an HMI via TCP/IP, which is not required any PC software tool. [[Jump to Video>>https://youtu.be/IZoOoRefJc8]]
761 -
762 -{{warning}}
763 -Please prioritize printers that support **PCL5**.
764 -{{/warning}}
765 -
766 -**Common PCL5 Commands**
767 -
768 -{{code language="lua"}}
769 ---Set text position and content
770 -local sample = "\x1B*p1000x1000YHelloWorld"
771 -{{/code}}
772 -
773 -{{code language="lua"}}
774 --- Set font size to 12 pt
775 -local fontSize = "\x1B(s12V"
776 -{{/code}}
777 -
778 -{{code language="lua"}}
779 --- Set print direction to 0 degrees
780 -local direction = "\x1B&a0P"
781 -{{/code}}
782 -
783 -{{code language="lua"}}
784 ---Restore default drawing logic
785 -local defaultLogic = "\x1B*l252O"
786 -{{/code}}
787 -
788 -{{code language="lua"}}
789 ---New page feed output
790 -local formFeed = "\x0C"
791 -{{/code}}
792 -
793 -[[Download link>>https://ftp.we-con.com.cn/Download/WIKI/PI%20HMI/Demo/Lua%20Script/PrinterTCPSocket.zip]]
794 -
795 -= 35 SFTP Client(PI 11.4) =
796 -
797 -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.**
798 -
799 -{{info}}
800 -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]]
801 -
802 -**Make sure TCP port 22 is not occupied by another SSH server, such as Bitvise SSH Server.**
803 -{{/info}}
804 -
805 -~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.
806 -
807 -{{code language="powershell"}}
808 -Get-Service sshd
809 -Start-Service sshd
810 -{{/code}}
811 -
812 -(% style="text-align:center" %)
813 -[[image:checkstatusSSH.png]]
814 -
815 -{{info}}
816 -If the SSH connection cannot be established, check and adjust the firewall’s inbound and outbound rules. Enter following command in powershell
817 -{{/info}}
818 -
819 -{{code language="powershell"}}
820 -netsh advfirewall set allprofiles state off
821 -{{/code}}
822 -
823 -2. Change the server IP, username and password.
824 -
825 -(% style="text-align:center" %)
826 -[[image:SSH1.png]]
827 -
828 -2. Change the server file path and HMI file path as user wanted.
829 -
830 -(% style="text-align:center" %)
831 -[[image:E2.png]]
832 -
833 -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.
834 -
835 -{{warning}}
836 -File operations are only supported under the "user:" path for the moment.
837 -{{/warning}}
838 -
839 -(% style="text-align:center" %)
840 -[[image:sf.png]]
841 -
842 -4. Check the file whether download or upload successfully.
843 -
844 -(% style="text-align:center" %)
845 -[[image:8217Wc3rju.png]]
846 -
847 -[[Download link>>https://ftp.we-con.com.cn/Download/WIKI/PI%20HMI/Demo/Lua%20Script/SFTP%20Client.zip]]
848 -
849 -= 36 Wechat Official Account Notification Push =
850 -
851 -This example shows how to set up the Wechat official account sandbox to test the alarm push.
852 -
853 -[[Wechat Official Platform Sandbox>>https://mp.weixin.qq.com/debug/cgi-bin/sandboxinfo?action=showinfo&t=sandbox/index]]
854 -
855 -To register a formal WeChat Official Account, please forward to:
856 -
857 -[[Weixin Official Accounts Platform>>url:https://mp.weixin.qq.com/]]
858 -
859 -~1. Login into the platform, and user can see the appID and appSecret, copy them for the further use.
860 -
861 -(% style="text-align:center" %)
862 -[[image:wechataccount.png]]
863 -
864 -2. User can scan the QR code on the left side to subscribe push notifications. And copy the Wechat ID.
865 -
866 -(% style="text-align:center" %)
867 -[[image:wechatID.png]]
868 -
869 -3. Click [Add test template] to create a new notification template.
870 -
871 -(% style="text-align:center" %)
872 -[[image:wechatTempalte.png]]
873 -
874 -4. Enter the title and content, then click submission, the content must follow this format: text: ~{~{text.DATA}}
875 -
876 -For example, use Alarm: ~{~{Alarm.DATA}}. For multiple lines, format the content as follows:
877 -
878 -{{code language="lua"}}
879 -Device: {{Device.DATA}}
880 -Alarm: {{Alarm.DATA}}
881 -Time: {{Time.DATA}}
882 -{{/code}}
883 -
884 -(% style="text-align:center" %)
885 -[[image:wechatTempalteConten2.png]]
886 -
887 -5. After the template is created, copy the template ID.
888 -
889 -(% style="text-align:center" %)
890 -[[image:wechatCopyTempalte.png]]
891 -
892 -6. Paste all these IDs(appID, appSecret, wechatID and templateID) into the lua script.
893 -
894 -(% style="text-align:center" %)
895 -[[image:wechatscriptcopyID.png]]
896 -
897 -7. Trigger the alarm condition, and you will receive an alarm notification from the WeChat Official Account.
898 -
899 -(% style="text-align:center" %)
900 -[[image:WechatResultResize.jpg]]
901 -
902 -[[Download link>>https://ftp.we-con.com.cn/Download/WIKI/PI%20HMI/Demo/Lua%20Script/WechatOfficialAccount.zip]]
1792547572135-677.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -41.0 KB
Content
8217Wc3rju.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -50.8 KB
Content
E2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -154.6 KB
Content
EYGRzMYrhy.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -171.9 KB
Content
SSH1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -190.6 KB
Content
WechatResult.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -163.7 KB
Content
WechatResultResize.jpg
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -29.8 KB
Content
checkstatusSSH.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -15.5 KB
Content
sf.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -298.4 KB
Content
wechatCopyTempalte.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -22.9 KB
Content
wechatID.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -41.0 KB
Content
wechatTempalte.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -23.1 KB
Content
wechatTempalteConten.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -46.9 KB
Content
wechatTempalteConten2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -48.4 KB
Content
wechataccount.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -70.4 KB
Content
wechatscriptcopyID.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Hunter
Size
... ... @@ -1,1 +1,0 @@
1 -245.5 KB
Content