基于物联网的智能厨房安全监测系统-下位机程序

简介: 基于物联网的智能厨房安全监测系统-下位机程序

最近遇到一个基于TCP/IP网络的远程智能物联网系统,采用Arduino Uno控制器作为下位机,采用LabVIEW作为远程监控软件,两者通过网络实现通信。初步定为使用labview编写上位机程序进行处理。为啥用labview呢,因为LabVIEW是美国国家仪器公司(NI)的创新软件产品,其全称是实验室虚拟仪器工程平台(Laboratory Virtual Instrument Engineering Workbench),是一种基于G语言(Graphics Language,图形化编程语言)的测试系统软件开发平台。LabVIEW并不局限于虚拟仪器的开发,它的作用是为大型复杂测试系统提供通用的软件开发平台。目前,LabVIEW已经成为测试领域应用最广泛和最有前途的软件开发平台之一。


项目中解决的问题


于TCP/IP网络的远程智能物联网系统,采用Arduino Uno控制器作为下位机,采用LabVIEW作为远程监控软件,两者通过网络实现通信。

在基于物联网的智能厨房安全监测系统中,Arduino Uno控制器需要完成以下功能:1)通过W5100网络模块接收并判断命令,采集和传输温度、煤气浓度、热释电传感器的数据,并通过W5100网络模块上传给LabVIEW软件。2)通过W5100网络模块接收并判断命令、控制多路继电器模组的断开与闭合,以控制家用电器的关闭与工作。


做题思路


提示:将DS18B20温度传感器的VCC和GND分别连接至Arduino Uno控制器的+5V和GND,以给DS18B20提供电源,DS18B20的DQ引脚接至ArduinoUno控制器数字引脚D2,且连接4.7kΩ的上拉电阻,因为DS18B20的DQ引脚正常工作需要添加上拉电阻。

将MQ-2气体传感器的两个H引脚分别接至加热电源的正负极,并调整电源模块输出+5V电压;将A端、B端分别接至Arduino Uno控制器的+5V、模拟输入A0,并且在B端与GND之间串接负载电阻。

将固态继电器模组的控制端分别接至Arduino Uno控制板上的数字端口D3、D4、D5、D6、GND。硬件连接图上只表示了一路继电器,其余的类似。

将热释电红外传感器的VCC、OUT、GND分别接至Arduino Uno控制板上的5V、数字接口D7和GND。此处没有在硬件连接图上表示出来。

远程智能厨房系统部分硬件连接图,

375bde03d42b429ebae79757e8a5748b.png


#include <DallasTemperature.h>                        // 包含Dallas单总线函数库
#include <SPI.h>                                        // 包含SPI函数库
#include <Ethernet.h>                                // 包含W5100网络函数库
#define ONE_WIRE_BUS  2                                // 定义数字口2为单总线的控制引脚
#define gas_Command        0x81                        // 气体采集命令
#define temp_Command       0x82                        // 温度采集命令
#define infrared_Command   0x80                        // 热释电采集命令
#define SW1_ON_Command     0x11                        // 继电器1闭合命令
#define SW1_OFF_Command    0x10                        // 继电器1断开命令
#define SW2_ON_Command     0x21                        // 继电器2闭合命令
#define SW2_OFF_Command    0x20                        // 继电器2断开命令
#define SW3_ON_Command     0x31                        /继电器3闭合命令
#define SW3_OFF_Command    0x30                        // 继电器3断开命令
#define SW4_ON_Command     0x41                        // 继电器4闭合命令
#define SW4_OFF_Command    0x40                        // 继电器4断开命令
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
// 设置MAC地址和IP地址
byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
IPAddress ip(192,168,1,177);
// 设置端口号
EthernetServer server(8000);
int SW1=3;                                        // 定义继电器1的控制引脚
int SW2=4;                                        // 定义继电器2的控制引脚
int SW3=5;                                        // 定义继电器3的控制引脚
int SW4=6;                                        // 定义继电器4的控制引脚
int inrared_Pin=7;                        // 定义热释电传感器信号的读取引脚
byte comdata[3]={0};                        // 定义数组,用于保存接收命令数据
void test_do_data(void);                        // 测试串口数据是否正确并执行命令
void setup()
{
  Ethernet.begin(mac, ip);                // 初始化TCP/IP协议栈
  server.begin();                                // 启动服务器
  sensors.begin();                        // 初始化单总线传感器
  pinMode(SW1, OUTPUT); 
  pinMode(SW2, OUTPUT); 
  pinMode(SW3, OUTPUT); 
  pinMode(SW4, OUTPUT);                        // 将继电器的控制引脚设置为输出状态
}
      digitalWrite(SW2, HIGH); 
                 break;
            case SW2_OFF_Command:                // 继电器2断开命令
                 digitalWrite(SW2, LOW); 
                 break;
            case SW3_ON_Command:                        // 继电器3闭合命令
                 digitalWrite(SW3, HIGH); 
                 break;
            case SW3_OFF_Command:                // 继电器3断开命令
                 digitalWrite(SW3, LOW);
                 break;
            case SW4_ON_Command:                        // 继电器4闭合命令
                 digitalWrite(SW4, HIGH); 
                 break;
            case SW4_OFF_Command:                // 继电器4断开命令
                 digitalWrite(SW4, LOW); 
                 break;            
        }
      }
   }
}     
相关实践学习
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
2月前
|
人工智能 Java 物联网
Java与边缘AI:构建离线智能的物联网与移动应用
随着边缘计算和终端设备算力的飞速发展,AI推理正从云端向边缘端迁移。本文深入探讨如何在资源受限的边缘设备上使用Java构建离线智能应用,涵盖从模型优化、推理加速到资源管理的全流程。我们将完整展示在Android设备、嵌入式系统和IoT网关中部署轻量级AI模型的技术方案,为构建真正实时、隐私安全的边缘智能应用提供完整实践指南。
354 3
|
9月前
|
传感器 人工智能 物联网
健康监测设备的技术革命:AI+物联网如何让你随时掌握健康数据?
健康监测设备的技术革命:AI+物联网如何让你随时掌握健康数据?
1179 19
|
8月前
|
人工智能 物联网 Android开发
【03】优雅草星云物联网AI智控系统从0开发鸿蒙端适配-deveco studio-在lib目录新建自定义库UtilsLibrary,ComponentLibrary,CommonConstLibrary完成设置SettingsView.ets初始公共类书写-优雅草卓伊凡
【03】优雅草星云物联网AI智控系统从0开发鸿蒙端适配-deveco studio-在lib目录新建自定义库UtilsLibrary,ComponentLibrary,CommonConstLibrary完成设置SettingsView.ets初始公共类书写-优雅草卓伊凡
252 23
【03】优雅草星云物联网AI智控系统从0开发鸿蒙端适配-deveco studio-在lib目录新建自定义库UtilsLibrary,ComponentLibrary,CommonConstLibrary完成设置SettingsView.ets初始公共类书写-优雅草卓伊凡
|
8月前
|
存储 人工智能 监控
星云智控科技-优雅草星云物联网AI智控系统软件产品技术栈一览表-优雅草卓伊凡
星云智控科技-优雅草星云物联网AI智控系统软件产品技术栈一览表-优雅草卓伊凡
273 7
星云智控科技-优雅草星云物联网AI智控系统软件产品技术栈一览表-优雅草卓伊凡
|
11月前
|
传感器 人工智能 监控
AI与物联网的融合:开启智能化未来的新篇章
AI与物联网的融合:开启智能化未来的新篇章
1714 96
|
8月前
|
人工智能 前端开发 物联网
【05】20250416优雅草星云物联网AI智控系统从0开发鸿蒙端适配-deveco studio-增加告警中心相关卡片页面WarningCardWidget相关-增加Canvas 绘制折线图-Canvas 绘制柱状图-首页-优雅草卓伊凡
【05】20250416优雅草星云物联网AI智控系统从0开发鸿蒙端适配-deveco studio-增加告警中心相关卡片页面WarningCardWidget相关-增加Canvas 绘制折线图-Canvas 绘制柱状图-首页-优雅草卓伊凡
214 0
【05】20250416优雅草星云物联网AI智控系统从0开发鸿蒙端适配-deveco studio-增加告警中心相关卡片页面WarningCardWidget相关-增加Canvas 绘制折线图-Canvas 绘制柱状图-首页-优雅草卓伊凡
|
存储 边缘计算 物联网
揭秘边缘计算:物联网时代的分布式智能
揭秘边缘计算:物联网时代的分布式智能
1047 92
|
9月前
|
存储 监控 安全
工业物联网关应用:PLC数据通过智能网关上传阿里云实战
本文介绍如何使用智能网关将工厂PLC数据传输至阿里云平台,适合中小企业远程监控设备状态。硬件准备包括三菱FX3U PLC、4G智能网关和24V电源。接线步骤涵盖PLC编程口与网关连接、运行状态检测及天线电源接入。配置过程涉及通讯参数、阿里云对接和数据点映射。PLC程序关键点包括数据上传触发和温度值处理。阿里云平台操作包含实时数据查看、数据可视化和规则引擎设置。最后提供常见故障排查表和安全建议,确保系统稳定运行。
848 1
|
安全 物联网 物联网安全
揭秘区块链技术在物联网(IoT)安全中的革新应用
揭秘区块链技术在物联网(IoT)安全中的革新应用
|
安全 物联网 网络安全
智能设备的安全隐患:物联网(IoT)安全指南
智能设备的安全隐患:物联网(IoT)安全指南
1247 12

相关产品

  • 物联网平台