Changes for page AI Image Sensor Calibration
Last modified by Karry Zhuang on 2025/07/03 11:59
From version 141.1
edited by Karry Zhuang
on 2024/04/30 17:03
on 2024/04/30 17:03
Change comment:
There is no comment for this version
To version 150.1
edited by Karry Zhuang
on 2024/05/09 18:01
on 2024/05/09 18:01
Change comment:
There is no comment for this version
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 2 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -339,9 +339,9 @@ 339 339 340 340 **Step 2**: Use ACT button to activate LHT52 and it will auto join to the TTN V3 network. After join success, it will start to upload sensor data to TTN V3 and user can see in the panel. 341 341 342 -=== 3.1.1 Uplink Payload (Fport~= 5) ===342 +=== 3.1.1 Uplink Payload (Fport~=2) === 343 343 344 -The uplink payload includes totally 14 bytes. Uplink packets use FPORT= 5and (% style="color:#4472c4" %)**every 20 minutes**(%%) send one uplink by default.344 +The uplink payload includes totally 14 bytes. Uplink packets use FPORT=2 and (% style="color:#4472c4" %)**every 20 minutes**(%%) send one uplink by default. 345 345 346 346 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:370px" %) 347 347 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)**Size(bytes)(% style="display:none" %) (%%)**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)2|=(% style="width: 80px;background-color:#4F81BD;color:white" %)4|=(% style="width: 80px;background-color:#4F81BD;color:white" %)4|=(% style="width: 60px;background-color:#4F81BD;color:white" %)4 ... ... @@ -349,7 +349,7 @@ 349 349 350 350 [[image:1714374026505-898.png||height="200" width="736"]] 351 351 352 -Payload Example(FPort= 5):(% style="background-color:yellow" %)**0D 32 66 29 AF E0 00 00 00 02 00 05 E3 B0**352 +Payload Example(FPort=2):(% style="background-color:yellow" %)**0D 32 66 29 AF E0 00 00 00 02 00 05 E3 B0** 353 353 354 354 === 3.1.2 BAT- Battery information === 355 355 ... ... @@ -394,119 +394,200 @@ 394 394 395 395 == (% title="Click and drag to resize" %)3.2 Get Image and show in PC(%%) == 396 396 397 -To get the AIS current image on the PC, you can issuecommands through TTN or connect AIS to your PC with TTL to send commands through the serial port to obtain relevant data packets.397 +To get the AIS current image on the PC, you can connect AIS to your PC with TTL to send commands through the serial port to obtain relevant data packets. 398 398 399 -=== 3.2.1 The image packetsare obtained byTTN===399 +=== (% id="cke_bm_3839S" style="display:none" %) (%%)3.2.1 The image date are obtained by serial port === 400 400 401 - Make sure thatnodeACKison:AT+PNACKMD=1or3401401 +Select the corresponding baud rate and serial port number through the serial port tool, select HEX display and HEX send, and continuously receive data from the AIS Sensor 402 402 403 - Thensend theraph instruction 0B 01.403 +[[image:1714985699187-406.png||height="277" width="536"]] 404 404 405 - Thenext time the AIS Sensordeviceruns at theset time,itwillstartcollectingimagedata.405 +In the serial port to send data C0 5A 00 00 00 00 04, and then send C0 5A 00 00 00 00 09, AIS Sensor will send a real-time image of the data packet, and then stop sending. Start with FFD8 and put it in TXT file 406 406 407 -[[image:1714 465192126-772.png||height="478" width="678"]]407 +[[image:1714985711524-251.png||height="140" width="526"]] 408 408 409 -The uplink payload includes totally 208 bytes. Uplink packets use FPORT=3 410 410 411 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:370px" %) 412 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**Size(bytes)(% style="display:none" %) (%%)**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)4|=(% style="width: 80px;background-color:#4F81BD;color:white" %)2|=(% style="width: 80px;background-color:#4F81BD;color:white" %)1|=(% style="width: 60px;background-color:#4F81BD;color:white" %)1|=(% style="width: 80px;background-color:#4F81BD;color:white" %)200 413 -|(% style="width:99px" %)Value|(% style="width:62px" %)sysTimeCurrent|BAT|total_packages|subcontracting_count|Image_date 410 +=== 3.2.2 Combined image === 414 414 415 - [[image:1714465532892-179.png||height="250"width="586"]]412 +Once all the data has been uploaded to the TTN platform, the subsequent step involves concatenating each packet in sequential order and saving it into a new TXT file. It is important to note that the first 8 bytes of each packet should be removed before concatenation. 416 416 417 - Example ofthefirst payload(FPort=3):663095C00BBE1000FFD8FFE000104A46494600010101004800480000FFDB0043001B12141714111B1716171E1C1B2028422B28252528513A3D3042605565645F555D5B6A7899816A7190735B5D85B586909EA3ABADAB6780BCC9BAA6C799A8ABA4FFDB0043011C1E1E2823284E2B2B4EA46E5D6EA4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4FFC0000B0800F0014001012200FFC4001F00000105010101010101000000000000000001020304050607414 +When you combine all the packets, you need to convert the data inside to binary. Here the conversion is demonstrated using the [[WinHex>>http://www.x-ways.net/winhex/index-m.html]] software. 418 418 419 - ========416 +Open WinHex to open the combined image data file. 420 420 421 - ==== 3.2.1.1sysTimeCurrent ====418 +[[image:1714467040612-103.png||height="134" width="649"]] 422 422 423 - Thesefour bytes containtheyear,month,day,hour, minute,andsecond of theime.420 +Click on the edit option to choose and convert. 424 424 425 - AI Sensor useUnix TimeStampformat basedon.422 +[[image:1714467065723-178.png||height="349" width="762"]] 426 426 427 - [[image:1714465658414-905.png||height="85"width="553"]]424 +Choose the Hex ASCII->Binary option and then click OK. 428 428 429 - Users canget this time from the link:[[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]]:426 +[[image:1714467089355-837.png||height="366" width="336"]] 430 430 431 - Belowisthe converterexample428 +After the conversion is finished, click on "File" and choose "Save As". 432 432 433 - EX:663095C0=2024-04-30 06:54:57.430 +[[image:1714467112365-676.png]] 434 434 435 - [[image:image-20240430162820-5.png||height="218"width="532"]]432 +Save as a.jpg file and click OK to generate a JPG file. 436 436 437 - ==== ====434 +[[image:1714467126476-110.png]] 438 438 439 - ====3.2.1.2BAT-Batteryinformation====436 +Open the saved JPG file to display the image transmitted by the AIS Sensor through the serial port. 440 440 441 - These two bytes of BATinclude the battery state and the actual voltage.438 +[[image:1714467134950-189.png]] 442 442 440 +=== === 443 443 444 -**Ex**:0X0BBE= 3006 mv 445 445 446 -= =======443 += 4. Configure AIS Sensor using AT commands = 447 447 448 -== ==3.2.1.3total_packages ====445 +== 4.1 Configure Methods == 449 449 450 -This byte represents the total number of packets for the image fetched this time. 451 451 452 - [[image:image-20240430163626-9.png||height="47" width="1116"]]448 + configure method: 453 453 454 -==== ==== 450 +* AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]]. 451 +* AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]]. 452 +* LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 455 455 456 -== ==3.2.1.4subcontracting_count====454 +== 4.2 General Commands == 457 457 458 -This byte represents the data number of the image packet retrieved 459 459 460 - [[image:image-20240430163738-10.png||height="44"width="1117"]]457 +These commands are to configure: 461 461 459 +* General system settings like: uplink interval. 460 +* LoRaWAN protocol & radio related command. 462 462 463 - ====3.2.1.5 Image_date====462 +They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki: 464 464 465 - Apart fromtheght bytesmentionedbove, thenext200bytesre allimagedata.464 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]] 466 466 467 - Examplethe firstpacket:663095C00BBE1000FFD8FFE000104A46494600010101004800480000FFDB0043001B12141714111B1716171E1C1B2028422B28252528513A3D3042605565645F555D5B6A7899816A7190735B5D85B586909EA3ABADAB6780BCC9BAA6C799A8ABA4FFDB0043011C1E1E2823284E2B2B4EA46E5D6EA4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4FFC0000B0800F0014001012200FFC4001F00000105010101010101000000000000000001020304050607466 +== 4.3 Commands special design for AIS Sensor == 468 468 469 - Image_date=FFD8FFE000104A46494600010101004800480000FFDB0043001B12141714111B1716171E1C1B2028422B28252528513A3D3042605565645F555D5B6A7899816A7190735B5D85B586909EA3ABADAB6780BCC9BAA6C799A8ABA4FFDB0043011C1E1E2823284E2B2B4EA46E5D6EA4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4FFC0000B0800F0014001012200FFC4001F00000105010101010101000000000000000001020304050607468 +=== 4.3.1 Change Uplink Interval === 470 470 471 471 472 - ====3.2.1.6Combinedimage====471 +Feature: Change LoRaWAN End Node Transmit Interval. 473 473 474 -Once all the data has been uploaded to the TTN platform, the subsequent step involves concatenating each packet in sequential order and saving it into a new TXT file. It is important to note that the first 8 bytes of each packet should be removed before concatenation. 475 475 476 - Whenyou combine all thepackets, you need toconvert the data inside tobinary. Heretheconversion is demonstrated using the [[WinHex>>http://www.x-ways.net/winhex/index-m.html]]software.474 +(% style="color:blue" %)**AT Command: AT+TDC** 477 477 478 -Open WinHex to open the combined image data file. 476 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:727.222px" %) 477 +|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:329px" %)**Response** 478 +|(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000((( 479 +OK 479 479 480 -[[image:1714467040612-103.png||height="134" width="649"]] 481 +the interval is 30000ms = 30s 482 +))) 483 +|(% style="width:165px" %)AT+TDC=60000|(% style="width:227px" %)Set Transmit Interval|(% style="width:329px" %)OK((( 484 +Set transmit interval to 60000ms = 60 seconds 485 +))) 481 481 482 -Click on the edit option to choose and convert. 487 +((( 488 +(% style="color:blue" %)**Downlink Command: 0x01** 483 483 484 -[[image:1714467065723-178.png||height="349" width="762"]] 490 +Format: Command Code (0x01) followed by 3 bytes time value. 491 +))) 485 485 486 -Choose the Hex ASCII->Binary option and then click OK. 493 +((( 494 +If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01. 495 +))) 487 487 488 - [[image:1714467089355-837.png||height="366"width="336"]]497 +* **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 489 489 490 - Aftertheconversionis finished,clickon"File"and choose"SaveAs".499 +* **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 491 491 492 - [[image:1714467112365-676.png]]501 +(% style="display:none" %) (%%) 493 493 494 - Saveas a.jpgfileand click OKtogenerate aJPGfile.503 +== 4.3.2 Request the server to send an ACK == 495 495 496 -[[image:1714467126476-110.png]] 497 497 498 - Openthesaved JPG filetodisplay the image transmittedby the AISSensor through the serial port.506 +(% style="color:blue" %)**AT Command: AT+PNACKMD** 499 499 500 -[[image:1714467134950-189.png]] 508 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:889px" %) 509 +|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:627px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response** 510 +|(% style="width:160px" %)AT+PNACKMD=1|(% style="width:627px" %)If the node uploads the ACK as confirm, it will request the server to send an ACK. If the server ack is not received, the node will upload the packets that have not received the ACK the next time it receives the ACK|(% style="width:100px" %)1((( 511 +OK 512 +))) 513 +|(% style="width:160px" %)AT+PNACKMD=0|(% style="width:627px" %)off request the server to send an ACK|(% style="width:100px" %)((( 514 +0 515 +OK 516 +))) 501 501 502 - ===3.2.2 Getthecurrentimagepacket byconnectingtheAUCUSBTTL adapters for AIS Sensors to theAIS Sensor.===518 +(% style="display:none" %) (%%) (% style="color:blue" %)**Downlink Command: 0x34** 503 503 504 - Select the corresponding baud rate and serial port number through the serial port tool, select HEXdisplayandHEXsend,and continuously receive data fromthe AIS Sensor520 +0X34 01 ~/~/Same As AT+PNACKMD=1 505 505 522 +0x34 00 ~/~/Same As AT+PNACKMD=0 506 506 507 -In the serial port to send data C0 5A 00 00 00 00 04, and then send C0 5A 00 00 00 00 09, AIS Sensor will send a real-time image of the data packet, and then stop sending. Start with FFD8 and put it in TXT file 508 508 525 +=== 4.3.3 Set Interrupt Mode === 509 509 510 -Then follow the instructions in 3.2.1.6 to get the image from AIS Sensor. 511 511 512 - 528 +Feature, Set Interrupt mode for GPIO_EXIT. 529 + 530 +(% style="color:blue" %)**AT Command: AT+INTMOD1,AT+INTMOD2,AT+INTMOD3** 531 + 532 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 533 +|=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 197px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Response** 534 +|(% style="width:154px" %)AT+INTMOD1=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)((( 535 +0 536 +OK 537 +the mode is 0 =Disable Interrupt 538 +))) 539 +|(% style="width:154px" %)AT+INTMOD1=2|(% style="width:196px" %)((( 540 +Set Transmit Interval 541 +0. (Disable Interrupt), 542 +~1. (Trigger by rising and falling edge) 543 +2. (Trigger by falling edge) 544 +3. (Trigger by rising edge) 545 +)))|(% style="width:157px" %)OK 546 +|(% style="width:154px" %)AT+INTMOD2=3|(% style="width:196px" %)Set Transmit Interval 547 +0. (Disable Interrupt), 548 +~1. (Trigger by rising and falling edge) 549 +2. (Trigger by falling edge) 550 +3. (Trigger by rising edge)|(% style="width:157px" %)OK 551 + 552 +(% style="color:blue" %)**Downlink Command: 0x06** 553 + 554 +Format: Command Code (0x06) followed by 3 bytes. 555 + 556 +This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06. 557 + 558 +* Example 1: Downlink Payload: 06000000 **~-~-->** AT+INTMOD1=0 559 +* Example 2: Downlink Payload: 06000003 **~-~-->** AT+INTMOD1=3 560 +* Example 3: Downlink Payload: 06000102 **~-~-->** AT+INTMOD2=2 561 + 562 +=== === 563 + 564 +=== 4.3.4 Clock logging (Since firmware version v1.2.1) === 565 + 566 + 567 +Sometimes when we deploy lots of end nodes in field. We want all sensors sample data at the same time, and upload these data together for analyze. In such case, we can use clock loging feature. 568 + 569 +We can use this command to set the start time of data recording and the time interval to meet the requirements of the specific collection time of data. 570 + 571 +* (% style="color:blue" %)**AT Command:**(%%)** (% style="color:#037691" %)AT+CLOCKLOG=a,b,c,d(%%)** 572 + 573 +(% style="color:#037691" %)**a: **(%%)**0:** Disable Clock logging. ** 1: **Enable Clock Logging 574 + 575 +(% style="color:#037691" %)**b: **(%%)Specify First sampling start second: range **(0 ~~ 3599, 65535) ** ~/~/ (% style="color:red" %)**Note:**(%%)** **If parameter b is set to 65535, the log period starts after the node accesses the network and sends packets. 576 + 577 +(% style="color:#037691" %)**c: **(%%)Specify the sampling interval: range **(0 ~~ 255 minutes)** 578 + 579 +(% style="color:#037691" %)**d:**(%%)How many entries should be uplink on every TDC **(max 32)** 580 + 581 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SPH01-NB_NB-IoT_Soil_pH_Sensor_User_Manual/WebHome/image-20240315141254-1.png?rev=1.1||alt="image-20240315141254-1.png"]] 582 + 583 +**Example:** 584 + 585 +**AT+CLOCKLOG=1,65535,1,5** 586 + 587 +After the node sends the first packet, data is recorded to the memory at intervals of 1 minute. For each TDC uplink, the uplink load will include: battery information + the last 5 memory records (payload + timestamp). 588 + 589 +(% class="wikigeneratedid" %) 590 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/TS01-NB_NB-IoT_Tilting_Sensor_User_Manual/WebHome/image-20240316163501-1.png?width=1064&height=517&rev=1.1||alt="image-20240316163501-1.png"]] 591 + 592 +(% class="wikigeneratedid" %) 593 +(% style="color:red" %)**Note: Users need to synchronize the server time before configuring this command. If the server time is not synchronized before this command is configured, the command takes effect only after the node is reset.**
- 1714985699187-406.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.karry - Size
-
... ... @@ -1,0 +1,1 @@ 1 +84.5 KB - Content
- 1714985711524-251.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.karry - Size
-
... ... @@ -1,0 +1,1 @@ 1 +204.6 KB - Content