Page 67 - 大樱桃优质高产栽培与病虫害防治
P. 67

第二章  高产优质生产栽培技术



                  (2)协调器软件设计
                  协调器在 Zigbee 协议中处于重要地位,负责启动 Zigbee 网络,随后启动整
              个网络,协调器的角色主要涉及启动和配置网络,功能类似一个路由器。协调器
              设计围绕SAPI任务事件处理函数实现,该事件中处理了SYS_EVENT_MSG事件、
              ZB_ALLOW_BIND_TIMER 事件、ZB_BIND_TIMER 事件、ZB_ENTRY_EVENT

              和 ZB_USER_EVENTS 事件。其中 ZB_ENTRY_EVENT 事件为 zigbee 协议栈的
              入口事件包括 zigbee 入网的过程处理等,ZB_USER_EVENTS 为用户的自定义的
              事件,在 ZB_ENTRY_EVENT 和 ZB_USER_EVENTS 事件处理过程中最终都调

              用了 zb_HandleOsalEvent() 函数,将这两个事件的处理过程中都集中在该函数内
              处理,如果要处理自定义的事件,需要在 zb_HandleOsalEvent() 函数中实现相应
              的功能。
                  ① ZB_ENTRY_EVENT 和 ZB_USER_EVENTS 事件,调用 zb_HandleOsal
              Event() 接口,其中处理的事件包括 ZB_ENTRY_EVENT、_START_EVT 和 __

              REPORT_EVT 事 件,_START_EVT 事件启动 Zigbee 协议栈;ZB_ENTRY_
              EVENT 事件负责解析收到的数据命令,通过函数接口,解析接收的数据属于哪
              种类型,是由哪个传感器发送的数据,再如何转发等信息。

                  ② _REPORT_EVT 事件利用定时器启动数据传输,一方面可以通过串口事
              件将数据发送到网关,另一方面可以接收网关通过串口发来的数据。
                  ③ SYS_EVENT_MSG 事件,处理两类事件,一类是收到的 MSG 类型的信
              息,再通过串口事件发送数据;另一类是用户事件,对用户命令进行解析,如果

              目标地址不为空,直接通过 zb_SendDataRequest 发送数据,目标地址为 0 或者是
              0×FFFF,则进行命令解析,通过 MAC 地址或者网络地址查找节点,利用该信
              息进行读写操作和数据发送。
                  ④串口事件,主要完成协调器发送数据到网关以及协调器接收从网关发送的
              命令。该事件通过定时器调用了 SYS_EVENT_MSG 事件来,通过 SYS_EVENT_

              MSG 事件进行命令解析和数据收发。
                  (3)功能模块软件设计
                  ①光照控制模块设计
                  光敏传感器采用 ML-020S-O 适用于高照度的传感器,量程为 0~150000

              lux,主要采集光照值,光敏传感器利用光敏元件将光信号转换为电信号的传感器,


                                                                                      59
   62   63   64   65   66   67   68   69   70   71   72