您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 管理学资料 > DM2000测距模块用户手册(基于DWM1000)
UWB高精度测距模块DM2000用户手册河北稳控科技有限公司DM2000是以DWM1000为核心的测距、数据传输模块,可进行高精度距离测量和用户数据传输通讯。本模块有“基站”和“标签”两种工作模式,下文中,若述及“其它工作模式”或通讯时的“对方模块”时,指的是另外一种工作模式的一个或多个模块。本手册仅作为演示性应用说明,模块数量、功能、寄存器定义等均接受重新定制,请与销售人员联系说明即可。下文中,“0x”表示16进制数,“\r\n”表示回车换行,“\t”表示TAB符号,“//”之后为注释说明文字。特性指标输入电源:DC5V@500mA带宽:110kHz测距精度:10cm测距频率:最高100次/秒有效范围:120米(无遮挡)工作模式:多基站+多标签(TDMA技术,理论上不限制数量)模块数量:最大256(更多数量可定制)通讯接口:UART(115200bps)通讯协议:$指令集、MODBUS、AABB距离格式:字符串或16进制输出数据传输:支持,不影响测距操作系统:实时多任务操作系统UCOSIII稳定性:多途径软件算法+硬件看门狗UWB高精度测距模块DM2000用户手册河北稳控科技有限公司目录特性指标.................................................................1拨码开关功能定义.........................................................3寄存器定义...............................................................4寄存器读取与设置通讯协议.................................................5通讯协议MODBUS.........................................................5通讯协议AABB...........................................................5通讯协议$指令集........................................................7通讯协议校验算法.......................................................7距离值输出通讯协议.......................................................9(1)自动输出距离值....................................................9(2)读取寄存器获取距离值.............................................10主要功能原理及说明......................................................11上电信息..............................................................11工作模式..............................................................11测距..................................................................11数据广播..............................................................11应用举例................................................................12(1)单标签+单基站....................................................12(2)单标签+多基站....................................................12(3)多标签+单基站....................................................13(4)多标签+多基站....................................................13UWB高精度测距模块DM2000用户手册河北稳控科技有限公司拨码开关功能定义开关编号功能描述开关状态说明1工作模式ON③工作于标签模式OFF工作于基站模式2输出格式ON16进制输出OFF字符串输出3~5基站硬件ID①345OFFOFFOFF基站硬件ID为:0OFFOFFON基站硬件ID为:1OFFONOFF基站硬件ID为:2OFFONON基站硬件ID为:3ONOFFOFF基站硬件ID为:4ONOFFON基站硬件ID为:5ONONOFF基站硬件ID为:6ONONON基站硬件ID为:76~8标签硬件ID①678OFFOFFOFF标签硬件ID为:0OFFOFFON标签硬件ID为:1OFFONOFF标签硬件ID为:2OFFONON标签硬件ID为:3ONOFFOFF标签硬件ID为:4ONOFFON标签硬件ID为:5ONONOFF标签硬件ID为:6ONONON标签硬件ID为:7注1:模块ID(地址)由硬件地址和软件地址组成,拨码开关设置硬件ID,寄存器设置软件ID,模块ID(地址)=软件ID*16+硬件ID。注2:仅当模块当前为标签模式时,标签拨码开关设置有效;仅当模块当前为基站模式时,基站拨码开关有效。注3:拨码开关位置,在本文中有时也用1表示ON位置,0表示OFF位置。UWB高精度测距模块DM2000用户手册河北稳控科技有限公司寄存器定义地址名称取值默认值单位备注说明0软件ID(地址)0~1511通讯速率11521152百bps暂固定为115200bps2自动输出0/113打包输出0/104在线时长③0~6553510秒5广播范围0~655352米6用户数据1~655357测距时间间隔0~65535500毫秒仅用于标签模式8ID识别①0/11910基站数量1~10个仅用于标签模式11基站01ID②0~255仅用于标签模式12基站02ID0~255仅用于标签模式13~19……0~255仅用于标签模式20基站10ID0~255仅用于标签模式63在线模块数量③0~25664模块00距离值④0~65535厘米65模块01距离值0~65535厘米66~126……0~65535127模块63距离值0~65535厘米注1:在测距过程中接收到交互数据帧时,是否判断帧内目标地址与自身地址(ID)相同,相同则响应,否则不响应。注2:未特殊说明“软件ID”或“硬件ID”时,ID均表示模块最终ID,即ID=软件ID*16+硬件ID。注3:模块在线是指:距离最近一次测距通讯到当前时间点的时间间隔长度,当时间长度超过“在线时长”寄存器设置的时间时,认为模块“不在线”或“离线”。注4:ID值为01的模块的当前距离值,为0时表示此模块“不在线”。UWB高精度测距模块DM2000用户手册河北稳控科技有限公司寄存器读取与设置通讯协议通讯协议MODBUS(1)03(0x03)指令码:读取多个连续的寄存器数据,指令格式如下指令数据帧结构地址码功能码0x03开始地址寄存器数量CRC校验1字节1字节2字节2字节2字节返回数据帧结构地址码功能码0x03数据长度数据CRC校验1字节1字节2字节n字节2字节例:读取地址为0x01的模块寄存器值,寄存器开始地址为0,连续读取10个寄存器主机发送指令:0x010x030x000x000x000x0A0xC50xCD从机返回应答:0x010x030x140x000x010x000x600x000x000x000x000x000x000x000x010x010xF40x000x000x000x640x000xC80x5F0x8F(下划线为读取到的10个寄存器值)读取多个连续寄存器时,单次读取不要超过64个寄存器,不要试图读取不存在的寄存器(地址大于63的寄存器)。注:地址码指的是模块软件地址值,下同。(2)06(0x06)指令码:修改单个寄存器的值,指令格式如下指令数据帧结构地址码功能码0x06寄存器地址寄存器值CRC校验1字节1字节2字节2字节2字节返回数据帧结构地址码功能码0x06寄存器地址寄存器值CRC校验1字节1字节2字节2字节2字节例:将地址为0x01的模块中的寄存器8的值修改为100主机发送指令:0x010x060x000x080x000x640x090xE3从机返回应答:0x010x060x000x080x000x640x090xE3通讯协议AABBAABB通讯协议是一种非标准自定义协议,相较于MODBUS通讯协议,结构更简单,指令生成方法更容易,便于进行快速测试。AABB通讯协议支持单寄存器读写两种指令。UWB高精度测距模块DM2000用户手册河北稳控科技有限公司(1)读取单个寄存器指令数据帧结构指令头0xAA0xBB地址码寄存器地址和校验2字节1字节1字节1字节返回数据帧结构指令头0xAA0xBB地址码寄存器地址寄存器值和校验2字节1字节1字节2字节1字节指令头:固定为16进制AABB地址码:VM3XX模块的地址(1~255,其中地址255为通用地址,详见后续“通用模块地址”说明)寄存器地址:要访问的寄存器地址(0~63),寄存器地址字节最高位是读写标志位,为0时表示读寄存器,为1时表示写寄存器。和校验:之前所有数据之和,0xAA+0xBB+地址码+寄存器地址,校验和超过255时,仅使用低字节。如下例中,校验和=0xAA+0xBB+0x01+0x08=0x016E,则只使用0x6E作为最终和校验码。例:读取地址为0x01的模块寄存器值,寄存器地址为8主机发送指令:0xAA0xBB0x010x080x6E从机返回应答:0xAA0xBB0x010x080x000x600xCE(2)修改单个寄存器指令数据帧结构指令头0xAA0xBB地址码寄存器地址|0x80寄存器值和校验2字节1字节1字节2字节1字节写寄存器指令中,寄存器地址字节的最高位应为1,即地址值与0x80做“或”运算。返回数据帧结构指令头0xAA0xBB地址码寄存器地址寄存器值和校验2字节1字节1字节2字节1字节例:修改地址为0x01的模块寄存器值,寄存器地址为8,修改值为100主机发送指令:0xAA0xBB0x010x880x000x640x52从机返回应答:0xAA0xBB0x010x080x000x640xD2(3)通用模块地址AABB通讯协议支持模块通用地址,无论模块的当前地址为何值,使用0xFF作为地址对模块发送读写指令,均可得到模块正确应答。例:使用通用地址,读取任一模块的寄存器8主机发送指令:0xAA0xBB0xFF0x080x6CUWB高精度测距模块DM2000用户手册河北稳控科技有限公司从机返回应答:0xAA0xBB0x010x080x000xC80x36通讯协议$指令集(1)修改寄存器指令$SETP$SETP=AA,BBBBB\r\nAA:要修改寄存器地址值十进制字符串,必须两位,不足两位时前面补“0”。BBBBB:要修改的寄存器值十进制字符串,必须五位,不足五位时前面补“0”。\r\n:回车换行符模块应答OK\r\n:设置成功模块应答CMDErr\r\n:设置失败,指令格式错误无应答:未知指令(2)读取寄存器指令$GETP$GETP=AA\r\nAA:要修改寄存器地址值十进制字符串,必须两位,不足两位时前面补“0”。\r\n:回车换行符模块应答OK\r\n:设置成功模块应答CMDErr\r\n:设置失败,指令格式错误无应答:未知指令通讯协议校验算法(1)CRC16-MODBUS算法unsignedintcr
本文标题:DM2000测距模块用户手册(基于DWM1000)
链接地址:https://www.777doc.com/doc-1648489 .html