光模块及基于该光模块实现的光模块工作参数监控方法与流程

文档序号:11205589阅读:405来源:国知局
光模块及基于该光模块实现的光模块工作参数监控方法与流程

本发明及硬件工作参数监控技术领域,特别涉及光模块及基于该光模块实现的光模块工作参数监控方法。



背景技术:

光模块在使用过程中,硬件上会与系统主板通过i2c连接,以便于系统主板读/写光模块的工作参数,实现对光模块的监视和控制。例如,温度、电压、功率等。在光模块领域中,目前的系统主板监控光模块的工作参数的方法是,以读温度为例,系统主板向光模块发送i2c读操作(内存地址0x60,长度2),表示要读取光模块内存地址为[96:97]的数值,光模块则返回相应地址的数值。系统主板获取光模块返回的数值后,根据msa协议规定单位进行相应的计算,最终得出光模块的温度数据。不难看出,采用目前的方法,要求工作人员必须事先记住温度参数在模块协议中的地址,且基于不同的msa协议内存地址可能不一致,因此,对工作人员的技能要求高,且使用不便利。



技术实现要素:

本发明的目的在于改善现有技术中所存在的不足,提供一种光模及基于该光模块实现的光模块工作参数监控方法。

为了实现上述发明目的,本发明实施例提供了以下技术方案:

一种光模块,包括:

命令接收单元,用于接收系统主板发送的查询命令,所述查询命令包括工作参数;

命令解析计算单元,用于解析所述查询命令,获得查询命令中的工作参数,调用相应的函数,计算所述工作参数的当前值;

结果反馈单元,用于返回所述工作参数的当前值给系统主板,或者将所述工作参数的当前值存储于所述内存地址。

根据本发明实施例,所述命令解析计算单元,包括:

命令解析子单元,用于解析所述查询命令,获得查询命令中的工作参数;

查表子单元,用于查找工作参数函数表,根据工作参数调出与该工作参数相对应的函数;

读数子单元,用于读取传感器当前采集的数据;

计算子单元,用于对读取到的数据进行计算,得到所述当前值。

根据本发明实施例,上述光模块中,还包括:校准单元,用于将计算得到的当前值进行校准;所述结果反馈单元,用于返回校准后的当前值给系统主板,或者将校准后的当前值存储于所述内存地址。

根据本发明实施例,上述光模块中,还包括控制命令响应单元;所述命令接收单元,还用于接收系统主板发送的控制命令;所述控制命令响应单元,用于响应所述控制命令;所述结果反馈单元,还用于将响应失败或响应成功的信息返馈给系统主板。

根据本发明实施例,上述光模块中,还包括模式切换单元,用于将光模块与系统主板之间的通信由i2c模式切换为串口模式,或者由串口模式切换为i2c模式。

基于本发明实施例提供的光模块实现的光模块工作参数监控方法,包括步骤:

系统主板向所述光模块发送查询命令,所述查询命令包括工作参数;

光模块接收系统主板发送的所述查询命令;

光模块解析所述查询命令,获得查询命令中的工作参数,调用相应的函数,计算所述工作参数的当前值;

光模块返回所述工作参数的当前值给系统主板,或者将所述工作参数的当前值存储于内存地址。

根据本发明实施例,上述方法中,还包括步骤:

系统主板向光模块发送控制命令;

光模块接收并响应系统主板发送的控制命令,返回响应失败或响应成功的信息给系统主板。

根据本发明实施,上述方法中,在所述系统主板向所述光模块发送查询命令之前,还包括步骤:光模块将其与系统主板的通信由i2c模式切换为串口模式。

与现有技术相比,本发明的有益效果:基于本发明提供的对模块实现的工作参数监控方法,系统主板向被监控模块发送命令后,被监控模块即会返回可直接读取的数值,与传统方法相比,工作人员无需牢记各个光模块的地址,也无需再将读取到的数据进行计算,不仅为工作人员的监控工作带来了便利,也降低了对工作人员的技能要求,进而也降低了人力成本。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1为本发明实施例提供的光模块的方框示意图。

图2为光模块中命令解析计算单元的方框示意图。

图3为本发明实施例提供的光模块实现的一种光模块工作参数监控方法的流程图。

图4为本发明实施例提供的光模块实现的另一种光模块工作参数监控方法的流程图。

图5为本发明实施例提供的光模块实现的另一种光模块工作参数监控方法的流程图。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本实施例提供的光模块,包括:

命令接收单元110,用于接收系统主板发送的查询命令,所述查询命令包括工作参数。

命令解析计算单元120,用于解析所述查询命令,获得查询命令中的工作参数,调用相应的函数,计算所述工作参数的当前值。

结果反馈单元130,用于返回所述工作参数的当前值给系统主板;或者将所述工作参数的当前值存储于内存地址。

作为可实施方式的举例,如图2所示,上述命令解析计算单元,包括:

命令解析子单元121,用于解析所述查询命令,获得查询命令中的工作参数。

查表子单元122,用于查找预先设置的工作参数函数表,根据工作参数调出与该工作参数相对应的函数。查表子单元中预先存储有由各个工作参数及相应的函数组成的工作参数函数表,每个工作参数对应有一个函数,调用函数时,直接根据工作参数即可在工作参数函数表中查找到与之对应的函数。

读数子单元123,用于读取传感器当前采集的数据;容易理解地,此处的传感器是与工作参数相对应的传感器,例如针对于温度参数,则读取的是温度传感器采集的数据。

计算子单元124,用于对读取到的数据进行计算,得到当前值。针对于不同的工作参数,对读取到的数据的计算方法也不相同,但是针对于每个工作参数的具体计算方法,是可以由传感器的技术说明书获得的。例如针对于温度参数,在购买温度传感器时厂家即会提供由温度传感器采集到的数据计算为温度数值(摄氏温度或华氏温度)的具体计算公式。

一般地,传感器采集的数据为当前的真实数据,计算子单元根据传感器厂家提供的计算公式可以计算出准确的数值,但是传感器在不同的环境下其精度会有影响,例如,温度传感器,在常温下精度很高,但是在低温或高温环境下则会存在一定偏差,此时,为了进一步提高计算结果的准确性,可以对计算出的数值进行校准,进行温度补偿。当然地,根据具体情况,可以是正补偿或负补偿,针对于不同的环境有不同的补偿量。因此,在更优选的实施方案中,光模块还包括校准单元,用于将计算得到的结果进行校准;此时,所述结果反馈单元130则是返回校准后的结果给系统主板,或者将校准后的结果存储于内存地址。传统方法中也会根据不同的精度要求进行校准,即是说,本发明方法及光模块对具体的校准方式没有改进,校准单元的具体校准过程可以直接采用现有的校准方法。

根据光模块协议,光模块与系统主板硬件上通过i2c连接,为了方便通信,固件程序也可以把i2c配置为串口模式,因此,光模块与系统主板之间有两种通信方式,即使用i2c或者串口uart。基于不同的通信方式,在进行光模块的工作参数监控时,光模块会有不同的反馈,由于基于串口连接的方式实现的监控方法更为简单,因此可以通过模式切换单元进行模式切换。因此,在较优的方案中,光模块还包括模式切换单元140,用于将光模块与系统主板之间的通信由i2c模式切换为串口模式,或者由串口模式切换为i2c模式。

系统主板不仅需要向光模块发送查询命令,以监视光模块的工作参数,有时也需要向光模块发送控制命令,检验光模块的性能,例如检验光模块是否能够达到100ma的工作状态。因此,在更优选的方案中,上述光模块中,还包括控制命令响应单元,此时,所述命令接收单元,还用于接收系统主板发送的控制命令;所述控制命令响应单元,用于响应所述控制命令;所述结果反馈单元,还用于将响应失败或响应成功的信息返馈给系统主板。

例如,系统主板向光模块发送“ctrl:bias:100”的控制命令。光模块接收该控制命令后,控制命令响应单元努力使光模块的偏置电流达到100ma,如果达到,则返回响应成功的信息给系统主板,否则返回响应失败的信息给系统主板,系统主板接收到光模块的返回信息后即可获知该光模块的工作性能。

可以理解,图1或图2所示的结构仅为示意,光模块100还可包括比图1中所示更多的单元。图1或图2中各个单元仅是从功能上进行划分,也可以有不同于图1或图2所示的划分方式。

图3所示方法尤其适用于光模块与系统主板通过串口通信时采用。请参阅图3,本发明实施例提供的一种光模块工作参数的监控方法,包括以下步骤:

s101,系统主板向光模块发送查询命令,所述查询命令包括工作参数。以查询温度为例,系统主板向光模块发送例如“meas:temp”,meas表示查询命令,temp表示工作参数。

s102,光模块接收并解析系统主板发送的查询命令,获得查询命令中的工作参数,调用相应的函数,计算所述工作参数的当前值。

本步骤中,基于本实施例中上述光模块实现时,光模块中预先存储有由各个工作参数及相应的函数组成的工作参数函数表,每个工作参数对应有一个函数,调用函数时,直接根据工作参数即可在工作参数函数表中查找到与之对应的函数。

调取到相应的函数后,计算出该工作参数的当前值,具体地,可以是:首先读取传感器当前采集的数据,然后将读取的数据进行计算。容易理解地,此处的传感器是与工作参数相对应的传感器,例如针对于温度参数,则读取的是温度传感器采集的数据。另外,针对于不同的工作参数,将读取到的数据计算为数值的计算方法也不相同,但是针对于每个工作参数的具体计算方法,是可以由传感器的技术说明书获得。例如针对于温度参数,在购买温度传感器时厂家即会提供由温度传感器采集到的数据计算为温度数值(摄氏温度或华氏温度)的具体计算公式。

s103,返回所述工作参数的当前值给系统主板。

在较优的实施方案中,为了保障返回给系统主板的数值为准确的数值,在步骤s102之后,还可以将计算得到的数值进行校准,此时,在步骤s103中,则是将校准后的数值返回给系统主板。

图4所示方法尤其适用于光模块与系统主板通过i2c通信时采用。请参阅图4,本发明实施例提供的另一种光模块工作参数的监控方法,包括以下步骤:

s201,系统主板向光模块发送查询命令,查询命令包括工作参数。还是以查询温度为例,系统主板向光模块内存地址,发送“meas:temp”。

需要说明的是,此处的内存地址是指光模块返回结果的存储地址,并非是传统方法中系统主板对于光模块的相应工作参数的读取地址,只要系统主板与光模块之间预先约定好返回结果的内存地址后即可,该地址不会因为工作参数的不同而变化,因此无需工作人员牢记针对于光模块的不同工作参数的不同地址,为工作人员提供了便利及降低了工作难度。

s202,光模块接收并解析所述查询命令,获得查询命令中的工作参数,调用相应的函数,计算所述工作参数的当前值。

本步骤的具体执行过程可以参考前述步骤s102中的相关描述。

s203,光模块将计算得到的所述工作参数的当前值存储于所述内存地址中。

s204,系统主板从所述内存地址中读取所述工作参数的当前值。

请参阅图5,针对于光模块与系统主板通过i2c通信的方式,也可以不采用图4所示方法,而采用图3所示方法,只是在图3所示方法的步骤s101之前,还包括步骤:

s100,光模块将其与系统主板的通信由i2c模式切换为串口模式。

在完成步骤s103之后,也可以还包括步骤:

s104,在监视结束后,即系统主板停止发送查询命令后,光模块将其与系统主板的通信由串口模式切换为i2c模式,以恢复光模块与系统主板的原有通信方式。

另外,图5所示方法中,该方法还可以包括以下步骤:

s105,系统主板向光模块发送控制命令。

s106,光模块接收并响应系统主板发送的控制命令,返回响应失败或响应成功的信息给系统主板。

例如,系统主板向光模块发送“ctrl:bias:100”的控制命令。光模块接收该控制命令后,控制命令响应单元努力使光模块的偏置电流达到100ma,如果达到,则返回响应成功的信息给系统主板,否则返回响应失败的信息给系统主板。

需要说明的是,此处的步骤s105-s106与步骤s101-s104之间没有执行先后顺序之分,两者分别为不同的处理过程。

基于本发明实施例提供的光模块,实现的上述方法中,与传统方法相比,工作人员无需牢记各个光模块的地址,也无需再将读取到的数据进行计算,不仅为工作人员的监控工作带来了便利,也降低了对工作人员的技能要求,进而也降低了人力成本。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1