Changes for page 01 Lua Functions
Last modified by Theodore Xu on 2023/10/26 10:51
Summary
-
Page properties (4 modified, 0 added, 0 removed)
Details
- Page properties
-
- Title
-
... ... @@ -1,1 +1,1 @@ 1 -01 Lua script function1 +01 Lua Functions - Parent
-
... ... @@ -1,1 +1,1 @@ 1 -V-BOX.V-Net.1\.User Manual.04 Lua script.WebHome1 +V-BOX.V-Net.1\.User Manual.04 Lua Script.WebHome - Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. admin1 +XWiki.Stone - Content
-
... ... @@ -1,70 +1,66 @@ 1 1 = **1 Interface Description** = 2 2 3 -== ** 1.1Data type definition** ==3 +== **Data type definition** == 4 4 5 -(% class="table-bordered" style="width:749.989px" %) 6 -|(% style="width:375px" %)**Type**|(% style="width:372px" %)**Description** 7 -|(% style="width:375px" %)nil|(% style="width:372px" %)Null 8 -|(% style="width:375px" %)boolean|(% style="width:372px" %)Boolean, the value is true or false 9 -|(% style="width:375px" %)number|(% style="width:372px" %)Integer or floating point, signed or unsigned 10 -|(% style="width:375px" %)string|(% style="width:372px" %)String 11 -|(% style="width:375px" %)table|(% style="width:372px" %)Table 12 -|(% style="width:375px" %)function|(% style="width:372px" %)Functions 5 +|=**Type**|=**Description** 6 +|=nil|Null 7 +|=boolean|Boolean (the value is true or false) 8 +|=number|Integer or floating point (signed or unsigned) 9 +|=string|String 10 +|=table|Table 11 +|=function|Functions 13 13 14 -== ** 1.2Built-in function library clipping** ==13 +== **Built-in function library clipping** == 15 15 16 16 Full features supported: coroutine/debug/ math/ package/ string/ table/ utf8 17 17 18 -// ,,Some features supported (available in []):** **os[clock/ date/ difftime/ time],,//17 +//Some features supported (available in []):** **os[clock/ date/ difftime/ time]// 19 19 20 -// ,,Not supported: io/ file,,//19 +//Not supported: io/ file// 21 21 22 -== ** 1.3Return value description** ==21 +== **Return value description** == 23 23 24 24 The function return type multi means multiple return values (at least 2), usually: 25 25 26 -// ,,1st: nil;,,//25 +//1st: nil// 27 27 28 -// ,,2nd: the error message;,,//27 +//2nd: the error message// 29 29 30 30 ((( 31 -== ** 1.4Function parameter description** ==30 +== **Function parameter description** == 32 32 ))) 33 33 34 - **Assumethefunction prototype:**33 +Suppose a function prototype is defined: 35 35 36 - |(((37 - //student(string name, number age[, number class])//35 +{{code language="LUA"}} 36 +student(string name, number age[, number class]) 38 38 39 - **Function:**38 +Function: 40 40 41 41 Register a student 42 42 43 - **Parameters:**42 +Parameters: 44 44 45 - //name//: student name44 +name: student name 46 46 47 - //age//: student age46 +age: student age 48 48 49 - //[class=1]//: Student class48 +[class=1]: Student class 50 50 51 - **Return:**50 +Return: 52 52 53 53 Succeed: true 54 54 55 55 Failed: multi 56 - )))55 +{{/code}} 57 57 58 -** Comment**57 +**Explanation** 59 59 60 -1.string name indicates that the first parameter name is a string 59 +1. string name indicates that the first parameter name is a string 60 +1. number age indicates that the second parameter age is numeric 61 +1. [, number class] indicates that the third parameter class is a numeric value, and it is optional. Specify the default class in class 1 in the parameter description. 62 +1. **Any parameter in the [] is considered to be an optional parameter, and may not be transmitted when called. The default value will be given in the parameter description.** 61 61 62 -2.number age indicates that the second parameter age is numeric 63 - 64 -3. [, number class] indicates that the third parameter class is a numeric value, and it is optional. Specify the default class in class 1 in the parameter description. 65 - 66 -{{id name="OLE_LINK4"/}}{{id name="OLE_LINK5"/}}4. Any parameter in the brackets of [] is considered to be an optional parameter, and may not be transmitted when called. The default value will be given in the parameter description. 67 - 68 68 **Call example** 69 69 70 70 |((( ... ... @@ -93,12 +93,11 @@ 93 93 94 94 **Comment** 95 95 96 -1.From the print result, the second line of the first line is successfully called and returns true; the third line fails the call, the error message is translated as: the bar student has been registered, and there is indeed an error in the code. 92 +1. From the print result, the first line and the second line are successfully called and returns true; the third line fails the call, the error message is translated as: the bar student has been registered, and there is indeed an error in the code. 93 +1. The fourth line of code uses two variables to receive the return value. The call failed, the first variable stat is nil, and the second variable err stores the error message. Then print it out using print, which is the output of the third line. This example shows how to capture and view the error message. 97 97 98 - 2.Thefourth line ofcode uses two variables to receive the return value. The call failed,the first variable stat is nil, and the secondvariable err storestheerror message. Then printit out using print, which isthe output of the third line. This example shows how to capture andview the error message.95 +== **Modification of the Print Function** == 99 99 100 -== **1.5 Modification of the Print Function** == 101 - 102 102 For the convenience of remote development, the print data is sent to the front end (web page) by means of network transmission, and the user can see the result of the debug output, because it consumes certain data and occupies the bandwidth of the server (or occupies server resources). So make the following restrictions: 103 103 104 104 **1.Interval limit: **When debugging, transfer once every 2~~3 seconds; ... ... @@ -114,39 +114,38 @@ 114 114 ((( 115 115 = **2 Address Operation** = 116 116 117 - **~Form 2.1**112 + 118 118 ))) 119 119 120 -(% class="table-bordered" style="width:982px" %) 121 -|(% style="width:167px" %) 16-bit data formal|(% style="width:142px" %) HLword|(% style="width:194px" %) 32-bit data formal|(% style="width:177px" %) HLword|(% style="width:147px" %) 64-bit data formal|(% style="width:152px" %) HLword 122 -|(% style="width:167px" %) 12(Default)|(% style="width:142px" %) 0|(% style="width:194px" %) 1234(Default)|(% style="width:177px" %) 0|(% style="width:147px" %)((( 123 - 12345678(Default) 124 -)))|(% style="width:152px" %)((( 125 - 0 115 +|=16-bit data formal|=HLword|=32-bit data formal|=HLword|= 64-bit data formal|=HLword 116 +|12(Default)|0|1234(Default)|0|((( 117 +12345678(Default) 118 +)))|((( 119 +0 126 126 ))) 127 -| (% style="width:167px" %)21|(% style="width:142px" %)6|(% style="width:194px" %)(((128 - 129 -)))| (% style="width:177px" %)2|(% style="width:147px" %)(((130 - 131 -)))| (% style="width:152px" %) 2132 -| (%style="width:167px" %)|(%style="width:142px" %)|(% style="width:194px" %)2143|(% style="width:177px" %)3|(% style="width:147px" %)(((133 - 134 -)))| (% style="width:152px" %)3135 -| (%style="width:167px" %)|(%style="width:142px" %)|(% style="width:194px" %) 4321|(% style="width:177px" %)6|(% style="width:147px" %)(((136 - 137 -)))| (% style="width:152px" %)6138 -| (%style="width:167px" %)|(%style="width:142px" %)|(%style="width:194px" %)|(%style="width:177px" %)|(% style="width:147px" %)(((139 - 140 -)))| (% style="width:152px" %)7141 -| (%style="width:167px" %)|(%style="width:142px" %)|(%style="width:194px" %)|(%style="width:177px" %)|(% style="width:147px" %)(((142 - 143 -)))| (% style="width:152px" %)8144 -| (%style="width:167px" %)|(%style="width:142px" %)|(%style="width:194px" %)|(%style="width:177px" %)|(% style="width:147px" %)(((145 - 146 -)))| (% style="width:152px" %)9147 -| (%style="width:167px" %)|(%style="width:142px" %)|(%style="width:194px" %)|(%style="width:177px" %)|(% style="width:147px" %)(((148 - 149 -)))| (% style="width:152px" %) 10121 +|21|6|((( 122 +3412(High and low word conversion) 123 +)))|2|((( 124 +34127856 (High and low word conversion) 125 +)))|2 126 +| | |2143|3|((( 127 +21436587 128 +)))|3 129 +| | |4321|6|((( 130 +87654321 131 +)))|6 132 +| | | | |((( 133 +78563412 134 +)))|7 135 +| | | | |((( 136 +56781234 137 +)))|8 138 +| | | | |((( 139 +65872143 140 +)))|9 141 +| | | | |((( 142 +43218765 143 +)))|10 150 150 151 151 * If HLword enters any other value, it will be treated as invalid. 152 152 ... ... @@ -153,9 +153,9 @@ 153 153 Demo: Reads a 32-bit floating-point number at position D0 of PLC 154 154 155 155 156 -(% style="text-align:center" %) 157 -[[image:企业微信截图_20210506180640.png||class="img-thumbnail" height="301" width="600"]] 158 158 151 +[[image:企业微信截图_20210506180640.png||height="301" width="600" class="img-thumbnail"]] 152 + 159 159 == **2.1 addr_getshort(string addr[, number type, number hlword])** == 160 160 161 161 **Function:** ... ... @@ -208,7 +208,7 @@ 208 208 209 209 **Function:** 210 210 211 - {{id name="OLE_LINK6"/}}Read 16-bit unsigned decimal address205 +Read 16-bit unsigned decimal address 212 212 213 213 **Parameters:** 214 214 ... ... @@ -300,7 +300,7 @@ 300 300 301 301 **Function:** 302 302 303 - {{id name="OLE_LINK7"/}}Read 32-bit unsigned decimal address297 +Read 32-bit unsigned decimal address 304 304 305 305 **Parameters:** 306 306 ... ... @@ -376,7 +376,7 @@ 376 376 377 377 //num//: value 378 378 379 - {{id name="OLE_LINK8"/}}[type = 0]not read through 1: read through373 +[type = 0]not read through 1: read through 380 380 381 381 [hlword = 0] Don't convert,See Form 2.1 382 382 ... ... @@ -1500,7 +1500,7 @@ 1500 1500 1501 1501 **✎Note: ** 1502 1502 1503 -// {{id name="OLE_LINK1"/}}HSW// is a system special register, so please refer to the system special register table during use. Do not use addresses that are not mentioned in the table, and use the addresses stated in the table with caution (example: restart ("@W_HSW0") Writing a value of 1 will cause V-BOX to restart).1497 +//HSW// is a system special register, so please refer to the system special register table during use. Do not use addresses that are not mentioned in the table, and use the addresses stated in the table with caution (example: restart ("@W_HSW0") Writing a value of 1 will cause V-BOX to restart). 1504 1504 1505 1505 //Without any conditions. Direct use ("@W_HSW0") will cause the V-BOX to restart continuously.// When using ("@W_HSW0") address, please add judgment conditions, such as: connection to MQTT fails, there is no network, the value of a PLC address meets the condition or counts to a certain value. 1506 1506 ... ... @@ -1843,7 +1843,7 @@ 1843 1843 Faied: multi 1844 1844 1845 1845 ((( 1846 -== **9.7 {{id name="_Toc22969"/}}remote_com_start(string config)** ==1840 +== **9.7 remote_com_start(string config)** == 1847 1847 ))) 1848 1848 1849 1849 **Function:** ... ... @@ -1883,7 +1883,7 @@ 1883 1883 Failed: multi 1884 1884 1885 1885 ((( 1886 -== **9.9 {{id name="_Toc22824"/}}remote_com_state()** ==1880 +== **9.9 remote_com_state()** == 1887 1887 ))) 1888 1888 1889 1889 **Function:** ... ... @@ -1897,4 +1897,4 @@ 1897 1897 1. number, current pass-through status: 0-none 1,2-starting pass-through 3-penetrating 4,5-finishing pass-through 6-pass-through error 1898 1898 1. string, pass-through server domain name and port number, xxxx (domain name): xxx (port number) 1899 1899 1900 - {{id name="OLE_LINK9"/}}Failed: multi1894 +Failed: multi