Changes for page DS20L -- LoRaWAN Smart Distance Detector User Manual 01
Last modified by Mengting Qiu on 2023/12/14 11:15
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 5 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -47,6 +47,7 @@ 47 47 * Firmware upgradable via program port or LoRa protocol 48 48 * Built-in 2400mAh battery or power by external power source 49 49 50 + 50 50 == 1.3 Specification == 51 51 52 52 ... ... @@ -60,6 +60,7 @@ 60 60 * ToF FoV: ±9°, Total 18° 61 61 * Light source: VCSEL 62 62 64 + 63 63 == 1.4 Power Consumption == 64 64 65 65 ... ... @@ -73,6 +73,7 @@ 73 73 * Idle: 21 mA @ 3.3v 74 74 * Max : 360 mA 75 75 78 + 76 76 = 2. Configure DS20L to connect to LoRaWAN network = 77 77 78 78 == 2.1 How it works == ... ... @@ -206,219 +206,120 @@ 206 206 === 2.3.2 Uplink Payload, FPORT~=2 === 207 207 208 208 209 -((( 210 -DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will: 212 +==== (% style="color:red" %)**MOD~=1**(%%) ==== 211 211 212 - periodically send thisuplinkevery20minutes, thisinterval [[can bechanged>>||anchor="H3.3.1SetTransmitIntervalTime"]].214 +Regularly detect distance and report. When the distance exceeds the limit, the alarm flag is set to 1, and the report can be triggered by external interrupts. 213 213 214 -Uplink Payload totals 11 bytes. 215 -))) 216 +Uplink Payload totals 10 bytes. 216 216 217 217 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 218 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 219 -**Size(bytes)** 220 -)))|=(% style="width: 30px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white; width: 80px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1** 221 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)((( 222 -[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]] 223 -)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)((( 224 -[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]] 225 -)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)((( 226 -[[Message Type>>||anchor="HMessageType"]] 227 -))) 219 +|(% style="background-color:#4f81bd; color:white; width:60px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:30px" %)**2**|(% style="background-color:#4f81bd; color:white; width:130px" %)**1**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**1**|(% style="background-color:#4f81bd; color:white; width:120px" %)**4** 220 +|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+ Alarm+Interrupt|(% style="width:74px" %)Distance|(% style="width:100px" %)Sensor State|(% style="width:119px" %)Interrupt Count 228 228 229 -[[image: image-20230805104104-2.png||height="136" width="754"]]222 +[[image:1701155076393-719.png]] 230 230 224 +(% style="color:blue" %)**Battery Info:** 231 231 232 - ====(% style="color:blue"%)**BatteryInfo**(%%)====226 +Check the battery voltage for DS20L 233 233 228 +Ex1: 0x0E10 = 3600mV 234 234 235 -Check the battery voltage for DS20L. 236 236 237 - Ex1:0x0B45=2885mV231 +(% style="color:blue" %)**MOD & Alarm & Interrupt:** 238 238 239 - Ex2:0x0B49=2889mV233 +(% style="color:red" %)**MOD:** 240 240 235 +**Example: ** (0x60>>6) & 0x3f =1 241 241 242 -==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ==== 237 +**0x01:** Regularly detect distance and report. 238 +**0x02: ** Uninterrupted measurement (external power supply). 243 243 240 +(% style="color:red" %)**Alarm:** 244 244 245 - Thisisoptional,user canonnectexternal DS18B20 sensorto the+3.3v,1-wire and GND pin .andthisfieldwillreport temperature.242 +When the detection distance exceeds the limit, the alarm flag is set to 1. 246 246 244 +(% style="color:red" %)**Interrupt:** 247 247 248 - **Example**:246 +Whether it is an external interrupt. 249 249 250 -If payload is: 0105H: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 251 251 252 - Ifpayload is:FF3FH : (FF3F & FC00 == 1),temp= (FF3FH - 65536)/10 = -19.3 degrees.249 +(% style="color:blue" %)**Distance info:** 253 253 254 - 255 -==== (% style="color:blue" %)**Distance**(%%) ==== 256 - 257 - 258 -Represents the distance value of the measurement output, the default unit is cm, and the value range parsed as a decimal number is 0-1200. In actual use, when the signal strength value Strength. 259 - 260 - 261 261 **Example**: 262 262 263 -If the datayouget from the registeris0x0B0xEA, thedistancebetweenthe sensor and the measured object is0BEA(H)=3050 (D)/10= 305cm.253 +If payload is: 0708H: distance = 0708H = 1800 mm 264 264 265 265 266 - ====(% style="color:blue" %)**Distancesignalstrength**(%%) ====256 +(% style="color:blue" %)**Sensor State:** 267 267 258 +Ex1: 0x00: Normal collection distance 268 268 269 - Refersto the signal strength, the default output value will be between0-65535. When the distance measurement gear is fixed,the farther the distancemeasurement is, the lower the signalstrength; thelower the target reflectivity, the lower the signalstrength. When Strengthisgreater than 100 and not equal to 65535, the measured value of Dist is considered credible.260 +Ex2 0x0x: Distance collection is wrong 270 270 271 271 272 - **Example**:263 +(% style="color:blue" %)**Interript Count:** 273 273 274 -If payload is: 1D7(H)=471(D),distance signal strength=471,471>100,471≠65535, the measured value ofDistis considered credible.265 +If payload is:000007D0H: count = 07D0H =2000 275 275 276 -Customers can judge whether they need to adjust the environment based on the signal strength. 277 277 278 278 279 - **1)Whenthesensor detects validdata:**269 +==== (% style="color:red" %)**MOD~=2**(%%)** ** ==== 280 280 281 - [[image:image-20230805155335-1.png||height="145"width="724"]]271 +Uninterrupted measurement. When the distance exceeds the limit, the output IO is set high and reports are reported every five minutes. The time can be set and powered by an external power supply.Uplink Payload totals 11bytes. 282 282 283 - 284 -**2) When the sensor detects invalid data:** 285 - 286 -[[image:image-20230805155428-2.png||height="139" width="726"]] 287 - 288 - 289 -**3) When the sensor is not connected:** 290 - 291 -[[image:image-20230805155515-3.png||height="143" width="725"]] 292 - 293 - 294 -==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ==== 295 - 296 - 297 -This data field shows if this packet is generated by interrupt or not. [[Click here>>||anchor="H3.3.2SetInterruptMode"]] for the hardware and software set up. 298 - 299 -Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI . 300 - 301 -**Example:** 302 - 303 -If byte[0]&0x01=0x00 : Normal uplink packet. 304 - 305 -If byte[0]&0x01=0x01 : Interrupt Uplink Packet. 306 - 307 - 308 -==== (% style="color:blue" %)**LiDAR temp**(%%) ==== 309 - 310 - 311 -Characterize the internal temperature value of the sensor. 312 - 313 -**Example: ** 314 -If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃. 315 -If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃. 316 - 317 - 318 -==== (% style="color:blue" %)**Message Type**(%%) ==== 319 - 320 - 321 -((( 322 -For a normal uplink payload, the message type is always 0x01. 323 -))) 324 - 325 -((( 326 -Valid Message Type: 327 -))) 328 - 329 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %) 330 -|=(% style="width: 161px;background-color:#4F81BD;color:white" %)**Message Type Code**|=(% style="width: 164px;background-color:#4F81BD;color:white" %)**Description**|=(% style="width: 174px;background-color:#4F81BD;color:white" %)**Payload** 331 -|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload 332 -|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload 333 - 334 -[[image:image-20230805150315-4.png||height="233" width="723"]] 335 - 336 - 337 -=== 2.3.3 Historical measuring distance, FPORT~=3 === 338 - 339 - 340 -DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]]. 341 - 342 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance. 343 - 344 344 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 345 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 346 -**Size(bytes)** 347 -)))|=(% style="width: 80px;background-color:#4F81BD;color:white" %)1|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD; color: white; width: 85px;" %)**1**|=(% style="background-color: #4F81BD; color: white; width: 85px;" %)4 348 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)((( 349 -Reserve(0xFF) 350 -)))|Distance|Distance signal strength|(% style="width:88px" %)((( 351 -LiDAR temp 352 -)))|(% style="width:85px" %)Unix TimeStamp 274 +|(% style="background-color:#4f81bd; color:white; width:70px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:40px" %)**2**|(% style="background-color:#4f81bd; color:white; width:130px" %)**1**|(% style="background-color:#4f81bd; color:white; width:130px" %)**4**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2** 275 +|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+Alarm+Do+Limit flag|(% style="width:74px" %)Distance Limit Alarm count|(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit 353 353 354 - **Interrupt flag& Interrupt level:**277 +[[image:1701155150328-206.png]] 355 355 356 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %) 357 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 358 -**Size(bit)** 359 -)))|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit7**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit6**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**[bit5:bit2]**|=(% style="width: 90px; background-color: #4F81BD; color: white;" %)**bit1**|=(% style="background-color: #4F81BD; color: white; width: 90px;" %)**bit0** 360 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)No ACK message|(% style="width:62.5px" %)Poll Message Flag|Reserve|(% style="width:91px" %)Interrupt level|(% style="width:88px" %)((( 361 -Interrupt flag 362 -))) 279 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:** 363 363 364 -* ((( 365 -Each data entry is 11 bytes and has the same structure as [[Uplink Payload>>||anchor="H2.3.2UplinkPayload2CFPORT3D2"]], to save airtime and battery, DS20L will send max bytes according to the current DR and Frequency bands. 366 -))) 281 +(% style="color:red" %)**MOD:** 367 367 368 - For example,inthe US915 band, the maxpayloadfordifferent DR is:283 +**Example: ** (0x60>>6) & 0x3f =1 369 369 370 -**a) DR0:** max is 11 bytes so one entry of data 285 +**0x01:** Regularly detect distance and report. 286 +**0x02: ** Uninterrupted measurement (external power supply). 371 371 372 - **b)DR1:** max is53 bytes so devices will upload 4 entries ofdata(total 44 bytes)288 +(% style="color:red" %)**Alarm:** 373 373 374 - **c)DR2:**totalpayload includes11entriesofdata290 +When the detection distance exceeds the limit, the alarm flag is set to 1. 375 375 376 - **d)DR3:**total payload includes 22 entriesof data.292 +(% style="color:red" %)**Do:** 377 377 378 - If DS20L doesn'thave anydatainthe pollingtime.Itwill uplink11 bytes of 0294 +When the distance exceeds the set threshold, pull the Do pin high. 379 379 296 +(% style="color:red" %)**Limit flag:** 380 380 381 - **Downlink:**298 +Mode for setting threshold: 0~~5 382 382 383 -0 x3164CC680C64CC69 74 05300 +0: does not use upper and lower limits 384 384 385 - [[image:image-20230805144936-2.png||height="113"width="746"]]302 +1: Use upper and lower limits 386 386 387 - **Uplink:**304 +2: is less than the lower limit value 388 388 389 - 43FF0E1000B01E64 CC 68 0C 40 FF 0D DE 00 A8 1E 64 CC 68 29 40 FF 09 92 00 D3 1E 64 CC 68 65 40 FF 02 3A 02 BC 1E 64 CC 68 A1 41 FF 0E 1A 00 A4 1E 64 CC 68 C0 40 FF 0D 2A 00 B8 1E 64 CC 68 E8 40 FF 00 C8 11 6A 1E 64 CC 69 24 40 FF 0E 24 00 AD 1E 64 CC 69 6D306 +3: is greater than the lower limit value 390 390 308 +4: is less than the upper limit 391 391 392 - **ParsedValue:**310 +5: is greater than the upper limit 393 393 394 -[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME] 395 395 313 +(% style="color:blue" %)**Upper limit:** 396 396 397 - [360,176,30,High,True,2023-08-0402:53:00],315 +The upper limit of the threshold cannot exceed 2000mm. 398 398 399 -[355,168,30,Low,False,2023-08-04 02:53:29], 400 400 401 - [245,211,30,Low,False,2023-08-0402:54:29],318 +(% style="color:blue" %)**Lower limit:** 402 402 403 - [57,700,30,Low,False,2023-08-0402:55:29],320 +The lower limit of the threshold cannot be less than 3mm. 404 404 405 -[361,164,30,Low,True,2023-08-04 02:56:00], 406 406 407 - [337,184,30,Low,False,2023-08-0402:56:40],323 +=== 2.3.3 Decode payload in The Things Network === 408 408 409 -[20,4458,30,Low,False,2023-08-04 02:57:40], 410 410 411 -[362,173,30,Low,False,2023-08-04 02:58:53], 412 - 413 - 414 -**History read from serial port:** 415 - 416 -[[image:image-20230805145056-3.png]] 417 - 418 - 419 -=== 2.3.4 Decode payload in The Things Network === 420 - 421 - 422 422 While using TTN network, you can add the payload format to decode the payload. 423 423 424 424 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654592762713-715.png?rev=1.1||alt="1654592762713-715.png"]] ... ... @@ -465,7 +465,7 @@ 465 465 466 466 After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake. 467 467 468 -[[image: http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/image-20220610165129-11.png?width=1088&height=595&rev=1.1||alt="image-20220610165129-11.png"]]372 +[[image:image-20231129085201-1.png||height="515" width="961"]] 469 469 470 470 471 471 == 2.5 Frequency Plans == ... ... @@ -549,6 +549,9 @@ 549 549 ))) 550 550 * ((( 551 551 Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 456 + 457 + 458 + 552 552 ))) 553 553 554 554 === 3.3.2 Set Interrupt Mode === ... ... @@ -589,7 +589,6 @@ 589 589 590 590 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 591 591 592 - 593 593 == 3.3.3 Set work mode == 594 594 595 595 ... ... @@ -628,8 +628,6 @@ 628 628 ))) 629 629 |(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK 630 630 631 - 632 - 633 633 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 634 634 |(% rowspan="11" style="color:blue; width:120px" %)**AT+DOL=5,1800,0,0,400**|(% rowspan="6" style="width:240px" %)The first bit sets the limit mode|(% style="width:150px" %)0: Do not use upper and lower limits 635 635 |(% style="width:251px" %)1: Use upper and lower limits ... ... @@ -655,8 +655,15 @@ 655 655 656 656 * Example 1: Downlink Payload: 070107080064000190 **~-~-->** AT+MOD=1,1800,100,0,400 657 657 562 +* Example 2: Downlink Payload: 070200000064000190 **~-~-->** AT+MOD=2,0,100,0,400 658 658 564 +* Example 3: Downlink Payload: 0703200000064000190 **~-~-->** AT+MOD=3,1800,100,0,400 659 659 566 +* Example 4: Downlink Payload: 070407080000000190 **~-~-->** AT+MOD=4,0,100,0,400 567 + 568 +* Example 5: Downlink Payload: 070507080000000190 **~-~-->** AT+MOD=5,1800,100,0,400 569 + 570 + 660 660 = 4. Battery & Power Consumption = 661 661 662 662 ... ... @@ -693,6 +693,33 @@ 693 693 DS20L use the same frequency as other Dragino products. User can see the detail from this link: [[Introduction>>doc:Main.End Device Frequency Band.WebHome||anchor="H1.Introduction"]] 694 694 695 695 607 +== 6.2 DS20L programming line == 608 + 609 + 610 +缺图 后续补上 611 + 612 +feature: 613 + 614 +for AT commands 615 + 616 +Update the firmware of DS20L 617 + 618 +Support interrupt mode 619 + 620 + 621 +== 6.3 LiDAR probe position == 622 + 623 + 624 +[[image:1701155390576-216.png||height="285" width="307"]] 625 + 626 +The black oval hole in the picture is the LiDAR probe. 627 + 628 + 629 +== 6.4 Interface definition == 630 + 631 +[[image:image-20231128151132-2.png||height="305" width="557"]] 632 + 633 + 696 696 = 7. Trouble Shooting = 697 697 698 698 == 7.1 AT Command input doesn't work ==
- 1701155076393-719.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +54.6 KB - Content
- 1701155150328-206.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +54.6 KB - Content
- 1701155390576-216.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +293.9 KB - Content
- image-20231128151132-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +281.2 KB - Content
- image-20231129085201-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +70.6 KB - Content