当用户PC端监控程序关闭时,系统需要传递消息给Arduino控制板,将Arduino核心控制板程序中的autoControl的变量置为true,切换到底层自主运行模式,让其自主运行本系统,独立处于传感器中的信息并控制教室内的用电器。在此,以防远端发送断开连接信息传输失败,系统处于远程监控模式下,且Arduino控制板将处于无限制监听等待PC端发来的信息,从而导致系统崩溃,无法处于传感器中的信息并控制教室内的用电器,需要一个计时器来计时,底层UDP端口监听超过一定时间,本系统将自动从远程监控模式下切换到底层自主运行模式下运行。
自主运行模式功能实现代码如下:
  if(autoControl)    //自主模式标志boolean变量
  {
    if(isPeople>1)
      digitalWrite(LED, HIGH);
    else
      digitalWrite(LED, LOW);      //日光灯智能控制
    if(temperature>referenceTemp)  //温度传感器中的温度与阈值温度进行对比
      digitalWrite (Temp_led,HIGH);
    else
      digitalWrite (Temp_led,LOW);  //电风扇智能控制
  }
3.2.3    远程监控模式下的Socket编程
Arduino控制板中的程序一直处于UDP端口监听状态,是通过先收到PC端数据,后依据该数据进行处理,并上传传感器中的信息至PC监控端。如果数据是用电设备的控制信息,则Arduino控制板将按照控制信息来控制教室内的用电器,同时上传传感器中的信息到PC端;如果数据是远程监控启动,则Arduino控制板将直接上传感器中的信息到PC端;如果数据是远程监控关闭信息,则Arduino控制板将把自主运行模式标志信息置为true,切换到自主运行模式下运行,Arduino控制板自行处理感应器中的信息,控制教室内的用电设备。其中涉及的通信代码如下:
  int packetSize = Udp.available();  
  if(packetSize)
  {
    autoControl=false;
Udp.readPacket(packetBuffer,UDP_TX_PACKET_MAX_SIZE,remoteIp,
remotePort);
    switch(packetBuffer[0])//对远程监控端的信息进行处理
    {
      case '0':digitalWrite(LED, LOW); digitalWrite (Temp_led,LOW);
               Udp.sendPacket( sendBuffer, remoteIp, remotePort); break;
      case '1':digitalWrite(LED, LOW); digitalWrite (Temp_led,HIGH);
               Udp.sendPacket( sendBuffer, remoteIp, remotePort); break;
      case '2':digitalWrite(LED, HIGH); digitalWrite (Temp_led,LOW);
               Udp.sendPacket( sendBuffer, remoteIp, remotePort); break;
      case '3':digitalWrite(LED, HIGH); digitalWrite (Temp_led,HIGH);
               Udp.sendPacket( sendBuffer, remoteIp, remotePort); break;
  case '4':autoControl=true; Serial.println("Remote monitoring has been closed!");break;   //远程监控开关
      case '5'://远程监控开启
        Serial.println("Remote monitoring has been started!");        
        Udp.sendPacket( sendBuffer, remoteIp, remotePort); break;
上一篇:AT89S52单片机智能小车控制系统设计+电路图
下一篇:LabVIEW飞行器模型静态参数测试台设计方法研究

Arduino的家居智能安防系统的设计+程序+电路图

AT89S52单片机教室灯光自动...

Arduino自动售货机的设计

Arduino智慧农业大棚智能管理系统设计+源代码

电力节能技术与电力新能源的讨论【2283字】

电力节能减排的形势和對策新思考【2738字】

电力电气控制阀的电压节...

浅谈传统人文精神茬大學...

高校网球场馆运营管理初探【1805字】

谷度酒庄消费者回访调查问卷表

浅谈新形势下妇产科护理...

辩护律师的作证义务和保...

拉力采集上位机软件开发任务书

《醉青春》导演作品阐述

国内外无刷直流电动机研究现状

多元化刑事简易程序构建探讨【9365字】

中国古代秘书擅权的发展和恶变