一种m-bus总线的通讯方法

文档序号:6328043阅读:158来源:国知局
专利名称:一种m-bus总线的通讯方法
技术领域
本发明涉及一种M-BUS总线的通讯方法,适应于M-BUS总线系统中从机设备接收主机设备发送的信号,尤其是与管理主机通过M-BUS总线组成网络的系统中的数传式水表、气表、电表以及其他报警、监控设备。
背景技术
近几年,符合ENl343-3标准的Meter-BUS总线,简称M-BUS总线网络,由于其通讯只需要两芯导线,无极性输入,以及可以星形连接,使施工简便,大大降低了施工劳动强度, 提高系统的稳定性,使M-BUS总线的通讯网络在远程数字抄表系统、报警监控系统中得到了广泛的应用,通常从机设备(Slave)由专用集成电路芯片编码、解码完成,但该专用集成电路芯片价格太高,使产品的成本非常高,抑制了 M-BUS总线系统的推广,再者该集成电路将M-BUS总线输入的整流组件、电源组件同时封装在一起,属于从总线上吸流不超过IOmA 的恒流源结构,且输出电压只有3. 3V,更进一步抑制了该总线系统的推广。为降低产品成本,许多人尝试使用分离元件组成M-BUS总线协议规范要求的功能,但通常除需要使用一组整流桥外,还需使用多个三极管、多个二极管和若干电阻、电容器件,个别的还需要使用至少一个大容量电容,大容量电容的使用,增加了 M-BUS总线系统的容性干扰,容易造成通讯的不稳定;数量多的分离器件的使用,造成故障因素增加,也将加大线路板的尺寸,不利于如水表等电路板安装体积受限的产品的使用,这样,虽然降低了产品成本,同时也降低了产品的性能,也难具有广泛的前景。

发明内容
本发明的设计目的是提供一种M-BUS总线的通讯方法,用于M-BUS总线系统中从机设备接收主机发送的信号,使采用该方法设计的M-BUS总线通讯从机设备具有价格低廉,性能稳定、同时使用电子元器件数量少的特点。本发明所提供的M-BUS总线的通讯方法,包括单片机、通讯接口组件、直流供电组件、其他功能组件,其中单片机内置有ADC模块(模数转换器模块)、或者同时内置有ADC 模块和模拟比较器模块,通讯接口组件包含桥式整流电路,电阻分压电路,本发明为实现上述目的在同一种方法的基础上,提供了两套不同的实现方案基础方案为经ADC模块对分压后的输入信号进行转换、测量,由测量所得到的数值决定高、低电信号的分界阈值,再根据采用的单片机的内部资源,决定实施的具体措施。第一套方案为从机设备由M-BUS总线系统主机的输入信号经整流桥整流后,经电阻分压,降压后的信号直接连接单片机ADC输入端口,从机设备接收主机设备发送的信号方法为从机设备预先对M-BUS总线主机传输的高电平和低电平信号经ADC模块进行模数转换,得到M-BUS总线主机传输高电平的ADC转换位为HVref,M-BUS总线主机传输低电平的ADC转换值为=LVref,在HVref与LVref之间取一个合适的值作为从机设备接收“高”、 “低”电平时的分界参考阈值,定义为Vref,从机设备启动ADC模块,侦听主机发送的信号,当输入信号的ADC转换值高于Vref时,接收到的信号电平为高电平“1”,当输入信号的ADC 转换值低于Vref时,接收到的信号电平为低电平“0”,具体的工作过程为(1)、上电稳定后,首先对M-BUS总线主机传输高电平定标,在M-BUS主机维持发送高电平状态时,启动ADC转换,并记录M-BUS总线主机传输高电平的ADC转换值,定义为 HVref,(2)、主机发送一组或一个低电平信号脉冲,从机设备对低电平信号作ADC转换, 得到的转换值定义为LVref,(3)、在HVref与LVref之间取一个合适的值作为从机设备接收“高”、“低”电平时的分界参考值,定义为Vref,当ADC转换值高于Vref时,接收到的信号电平为高电平“1”, 当ADC转换值低于Vref时,接收到的信号电平为低电平“0”,(4)、启动ADC转换,侦听主机发送的信号,通过ADC转换,完成对总线传输信号的识别,实现通讯功能。对于多数M-BUS总线通讯系统,明确了主机传输“高”、“低”电平时的电压差值,根据预先约定的主机传输“高”、“低”电平时的电压差值,计算出该电压差值所对应的ADC转换值,定义为=SVref,M-BUS总线主机传输的高电平对应的ADC转换值=HVref,经ADC模块转换测量,在HVref与HVref-SVref之间取一个合适的值作为从机设备接收“高”、“低”电平时的分界参考阈值,定义为Vref,从机设备启动ADC模块,侦听主机发送的信号,当输入信号的ADC转换值高于Vref时,接收到的信号电平为高电平“ 1”,当输入信号的ADC转换值低于Vref时,接收到的信号电平为低电平“0”。第二套方案为使用的单片机同时内置有模数转换器模块和模拟比较器模块,主机输入从机设备的信号经整流桥整流后,采用电阻分压,分压后的信号连接从机设备的模数转换器模块和模拟比较器模块,先将输入信号切换到单片机ADC模块的一个输入端口, 从机设备预先对M-BUS总线主机传输的高电平和低电平信号经ADC模块进行模数转换,得到M-BUS总线主机传输高电平的ADC转换值为HVref,M-BUS总线主机传输低电平的ADC 转换值为LVref,在HVref与LVref之间取一个合适的值作为从机设备接收“高”、“低”电平时的分界参考阈值,定义为=Vref,再将输入信号切换到单片机模拟比较器的一个输入端口,由已取得的Vref的值调整模拟比较器的参考电压值,定义为CVref,当输入信号的值高于CVref时,接收到的信号电平定义为高电平“ 1”,当输入信号的值低于CVref时,接收到的信号电平定义为低电平“0”,其工作过程为(1)、上电稳定后,首先对M-BUS总线主机传输高电平定标,在M-BUS主机维持发送高电平状态时,输入信号先切换到单片机ADC输入端口,启动ADC转换,并记录M-BUS总线主机传输高电平的ADC转换值,定义为=HVref,(2)、主机发送一组或一个低电平信号脉冲,从机设备对低电平信号作ADC转换, 得到的转换值定义为LVref,(3)、在HVref与LVref之间取一个合适的值作为从机设备接收“高”、“低”电平时的分界参考值,定义为=Vref,将输入信号切换到单片机模拟比较器的一个输入端口,通过 Vref的值调整模拟比较器的参考电压值,定义为CVref,当输入信号的值高于CVref时,接收到的信号电平定义为高电平“1”,当输入信号的值低于CVref时,接收到的信号电平定义为低电平“0”,
(4)、启动模拟比较器,侦听主机发送的信号,完成对总线传输信号的识别,实现通讯功能。在第二套方案的实际使用中,其中对于已明确规定主机传输“高”、“低”电平时的电压差值的M-BUS系统,Vref的值通过对M-BUS总线主机发送的的高电平实际测量,计算低电平值获取,过程为主机输入从机设备的信号经整流桥整流后,采用电阻分压,分压后的信号连接从机设备的模数转换器模块和模拟比较器模块,先将输入信号切换到单片机ADC模块的一个输入端口,M-BUS总线主机传输的高电平对应的ADC转换值=HVref,经ADC模块转换测量,根据预先约定的主机传输“高”、“低”电平时的电压差值,计算出该电压差值所对应的ADC转换值,定义为=SVref,在HVref与HVref-SVref之间取一个合适的值作为从机设备接收“高”、“低”电平时的分界参考阈值,定义为=Vref,再将输入信号切换到单片机模拟比较器的一个输入端口,由已取得的Vref的值调整模拟比较器的参考电压值,定义为CVref, 当输入信号的值高于CVref时,接收到的信号电平定义为高电平“1”,当输入信号的值低于 CVref时,接收到的信号电平定义为低电平“0”,实现通讯。本发明优点在于1、仅使用一组整流桥与分压电阻,采用单片机内置ADC,或ADC加模拟比较器模块组合完成M-BUS从机设备接收功能,器件少,成本低。2、外围器件少,尤具是对总线具有干扰的容性、感性器件少,对M-BUS总线的干扰少,使系统更加稳定、可靠。3、从机设备电源直接从总线上提取,输出电压和电流可根据不同的要求调整。


图1 本发明实施例M-BUS总线主机发送信号示意图。图2 本发明实施例M-BUS总线从机设备电原理示意图之一。图3 本发明实施例M-BUS总线从机设备电原理示意图之二。
具体实施例方式下面结合附图,对本发明做进一步的说明如图1所示对本实施例所涉及的M-BUS总线主机发送信号简易描述,在图中,所给定的主机传输信号为较常见的电压值,主机传号(维持高电平、或发送逻辑“1”信号)的电压=Vmark = 20. 8V-42V,主机空号(发送逻辑“0”信号)的电压=Vspace = Vmark-IOV0在例证中假定M-BUS总线主机的发送信号传输到M-BUS总线从机设备无衰减,假设 Vmark-30V,Vspace = 20V。结合图2,具体分析本是发明的第一个具体实施方式
,M-BUS总线从机设备电路包括单片机系统(Ul)、总线输入与整流桥组件(DB)、分压电阻网络(R1、R2)、电源组件、通讯发送组件,其他功能组件,单片机内置有ADC模块。M-BUS总线主机发送信号经整流桥(DB)整流后,由分压电阻网络(R1、R2)进行分压处理,分压后的电压Vin直接连接单片机的(ADC)输入引脚。其通讯流程为(1)、M-BUS总线主机先发送Vmark信号,即逻辑“1”信号,且维持一定长度的时间,以保证M-BUS总线从机设备可靠上电,假设Vmark = 30V,从机设备启动后,先对Vmark 高电平定标,即通过分压电阻网络(R1、M)对整流后的输入信号分压,即分压值为VinJg 设从机设备在接收到Vmark信号的分压值Vin-3V,单片机的ADC参考电压Vref = 3. 6V, 在M-BUS主机维持发送高电平状态时,启动ADC转换,并记录M-BUS总线主机传输高电平的ADC转换值,定义为=HVref,在以上的假定条件下,同时假设ADC的精度为8位长度,则 HVref = 0xD5,O)、根据预先约定的主机传输“高”、“低”电平时的电压差值,在本例中假设 Vmark-Vspace = 10V, Vspace = 20V,即计算出该电压差值所对应的ADC转换值,定义为 SVref,计算数据为SVref = 0x47,(3)、在HVref与HVref-SVref之间取一个合适的值作为从机设备接收“高”、“低” 电平时的分界参考值,定义为=Vref,当ADC转换值高于Vref时,接收到的信号电平为高电平“ 1 ”,当ADC转换值低于Vref时,接收到的信号电平为低电平“0”,依本例=HVref-SVref =0x8E,则Vref大于0x8E,小于0xD5,为了通讯稳定,一般Vref的取值为接近中值,可定义 Vref = OxBl,(4)、启动ADC转换,侦听主机发送的信号,通过对Vin信号进行ADC转换,完成对总线传输信号的识别,实现通讯功能,在本例中当ADC转换值大于OxBl时,接收到的信号电平为高电平“1”,当ADC转换值小于OxBl时,接收到的信号电平为低电平“0”。在通讯实现方式中,Vref的阈值还可以通过对M-BUS总线主机发送的Vmark、 Vspace电平信号实际测量获取,当完成“HVref”的测量后,可预先约定主机发送一组或一个Vspace低电平信号脉冲,从机设备对输入的Vspace低电平信号作ADC转换测量,将得到的转换值定义为=LVref,在HVref与LVref之间取一个合适的值作为从机设备接收“高”、 “低”电平时的分界参考值,定义为Vref,当ADC转换值高于Vref时,接收到的信号电平为高电平“丨”,当ADC转换值低于Vref时,接收到的信号电平为低电平“0”。结合图1和图3,具体分析本是发明的第二个具体实施方式
,M-BUS总线从机设备电路包括单片机(Ul)、总线输入与整流桥组件(DB)、分压电阻网络(R1、R2)、电源组件、通讯发送组件,其他功能组件,单片机内置有ADC模块和模拟比较器模块,本实施例采用的单片机为内置的ADC模块和模拟比较器的输入Vin-端复用一个管脚,可通过内置开关切换, 模拟比较器的输入Vin+由单片机内置基准源提供。M-BUS总线主机发送信号经整流桥(DB)整流后,由分压电阻网络(R1、R2)进行分压处理,分压后的电压Vin直接连接单片机的(ADC)输入引脚和模拟比较器的Vin-端复用管脚。其通讯流程为(1)、上电稳定后,首先对M-BUS总线主机传输高电平定标,在M-BUS主机维持发送高电平状态时,输入信号先连接单片机ADC输入端口,启动ADC转换,并记录M-BUS总线主机传输高电平的ADC转换值,定义为=HVref,O)、根据预先约定的主机传输“高”、“低”电平时的电压差值,计算出该电压差值所对应的ADC转换值,定义为=SVref,(3)、在HVref与HVref-SVref之间取一个合适的值作为从机设备接收“高”、“低” 电平时的分界参考值,定义为Vref,将输入信号切换到单片机模拟比较器的一个输入端口,由已经取得的Vref的数值调整模拟比较器的另一个输入端口的参考电压值,定义为 CVref,当输入信号的值高于CVref时,接收到的信号电平定义为高电平“1”,当输入信号的值低于CVref时,接收到的信号电平定义为低电平“0”,0)、启动模拟比较器,侦听主机发送的信号,完成对总线传输信号的识别,实现通讯功能。(5)、对于非标准的、或未明确主机传输“高”、“低”电平时的电压差值的M-BUS系统,Vref的值通过对M-BUS总线主机发送的低电平实际测量获取,当完成HVref的测量后, 可预先约定要求主机发送一组或一个低电平信号脉冲,从机设备对低电平信号作ADC转换,得到的转换值定义为=LVref,在HVref与LVref之间取一个合适的值作为从机设备接收 “高”、“低”电平时的模拟信号比较分界参考值,CVref,完成ADC转换后,切换到模拟比较器功能,当输入信号值高于CVref时,接收到的信号电平定义为高电平“ 1 ”,当输入信号值低于CVref时,接收到的信号电平定义为低电平“0”。除上述实施例外,本发明还可以有其他实施方式,如单片机的选用不同、ADC取样顺序不同等等,但凡采用等同替换或等效变换形成的技术方案,均落在本发明权利要求的保护范围内。
权利要求
1.一种M-BUS总线的通讯方法,适应于M-BUS总线系统中的从机设备接收主机设备发送的信号,包括单片机、通讯接口组件、直流供电组件、其他功能组件,其特征为单片机内置有ADC模块(模数转换器模块),通讯接口组件包含桥式整流电路,电阻分压电路, M-BUS总线系统主机的输入从机设备的信号经整流桥整流后,由电阻网络分压,降压后的信号直接连接单片机ADC输入端口,从机设备接收主机设备发送的信号方法为从机设备预先对M-BUS总线主机传输的高电平和低电平信号经ADC模块进行模数转换,得到M-BUS总线主机传输高电平的ADC转换值为HVref,M-BUS总线主机传输低电平的ADC转换值为 LVref,在HVref与LVref之间取一个合适的值作为从机设备接收“高”、“低”电平时的分界参考阈值,定义为=Vref,从机设备启动ADC模块,侦听主机发送的信号,当输入信号的ADC 转换值高于Vref时,接收到的信号电平为高电平“1”,当输入信号的ADC转换值低于Vref 时,接收到的信号电平为低电平“0”,实现通讯。
2.根据权利要求1所述的M-BUS总线的通讯方法,其特征在于=M-BUS总线主机传输的高电平对应的ADC转换值=HVref,经ADC模块转换测量,根据预先约定的主机传输“高”、 “低”电平时的电压差值,计算出该电压差值所对应的ADC转换值,定义为SVref,在HVref 与HVref-SVref之间取一个合适的值作为从机设备接收“高”、“低”电平时的分界参考阈值, 定义为Vref,从机设备启动ADC模块,侦听主机发送的信号,当输入信号的ADC转换值高于 Vref时,接收到的信号电平为高电平“1”,当输入信号的ADC转换值低于Vref时,接收到的信号电平为低电平“0”,实现通讯。
3.根据权利要求1或2所述的M-BUS总线的通讯方法,其特征在于主机输入从机设备的信号经整流桥整流后,采用电阻分压方法,分压后的信号直接连入从机设备的ADC模块的输入端。
4.根据权利要求1或2或3所述的M-BUS总线的通讯方法,其特征在于使用的单片机同时内置有模数转换器模块和模拟比较器模块,主机输入从机设备的信号经整流桥整流后,采用电阻分压,分压后的信号连接从机设备的模数转换器模块和模拟比较器模块,先将输入信号切换到单片机ADC模块的一个输入端口,从机设备预先对M-BUS总线主机传输的高电平和低电平信号经ADC模块进行模数转换,得到M-BUS总线主机传输高电平的ADC转换值为HVref,M-BUS总线主机传输低电平的ADC转换值为LVref,在HVref与LVref之间取一个合适的值作为从机设备接收“高”、“低”电平时的分界参考阈值,定义为Vref,再将输入信号切换到单片机模拟比较器的一个输入端口,由已取得的Vref的值调整模拟比较器的参考电压值,定义为CVref,当输入信号的值高于CVref时,接接收到的信号电平定义为高电平“1”,当输入信号的值低于CVref时,接收到的信号电平定义为低电平“0”,实现通讯。
5.根据权利要求1或2或3或4所述的M-BUS总线的通讯方法,其特征在于使用的单片机同时内置有模数转换器模块和模拟比较器模块,主机输入从机设备的信号经整流桥整流后,采用电阻分压,分压后的信号连接从机设备的模数转换器模块和模拟比较器模块,先将输入信号切换到单片机ADC模块的一个输入端口,M-BUS总线主机传输的高电平对应的 ADC转换值HVref,经ADC模块转换测量,根据预先约定的主机传输“高”、“低”电平时的电压差值,计算出该电压差值所对应的ADC转换值,定义为SVref,在HVref与HVref-SVref 之间取一个合适的值作为从机设备接收“高”、“低”电平时的分界参考阈值,定义为Vref,再将输入信号切换到单片机模拟比较器的一个输入端口,由已取得的Vref的值调整模拟比较器的参考电压值,定义为CVref,当输入信号的值高于CVref时,接收到的信号电平定义为高电平“1”,当输入信号的值低于CVref时,接收到的信号电平定义为低电平“0”,实现通讯。
全文摘要
一种M-BUS总线的通讯方法,适应于M-BUS总线系统中的从机设备接收主机设备发送的信号,包括单片机、通讯接口组件、直流供电组件、其他功能组件,通讯接口组件包含桥式整流电路,电阻分压电路,M-BUS总线系统主机的输入从机设备的信号经整流桥整流后,经电阻网络分压,降压后的信号直接连接单片机ADC输入端口,由ADC模块对输入的信号进行测量,由测量所得到的数值计算出M-BUS总线输入的高、低电信号的分界阈值,完成分界阈值的设定后,启用ADC模块或模拟比较器模块,通过输入的信号与分界阈值的比较,完成对总线输入的信号进行通讯侦听,从而达到通讯数据接收的功能,具有抗干扰能力强,成本低的特点。
文档编号G05B19/042GK102298345SQ20111013437
公开日2011年12月28日 申请日期2011年5月20日 优先权日2011年5月20日
发明者何兰, 吴明星, 陈景之 申请人:深圳市骏普科技开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1