生产追溯系统-Wifi+传感器,实现计数器以及监控机器是否停止
物联网听上去是一个高大上的词儿,还有什么大数据、云、智能制造等等,今天我也往这方面稍微靠一靠,这篇文章主要介绍的是通过 wifi 模块与传感器组合,实现感应计数器,应用场景主要如下:
1.统计 SMT 机器过板数量。
2.监测 SMT 机器是否停止运行。
3.AGV障碍物感应预警。
在此之前我们需要准备必备的硬件,wifi模块与传感器,分别如下图所示:
传感器 + wifi
接线方式如下:
3V --> 3V/5V
OUT-->15
GND-->SND
开发工具为 Arduion 1.8.9,打开工具之后我们开始编程,主要代码如下:
void loop(){
display.clear();
display.drawString(, , WiFi.localIP().toString()); //显示 IP 地址 display.display();
delay(); }
void setup()
{
display.init();
display.flipScreenVertically();
display.setFont(ArialMT_Plain_16); //设置字体
display.clear();
display.drawString(, , id);
display.drawString(, , "...");
display.display();
while(WiFiMulti.run() != WL_CONNECTED) {
delay();
} Serial.begin();
delay(); Serial.print(digitalRead());
delay();
attachInterrupt(, CountTimes, FALLING); //触发条件 }
Api代码比较简单,一个写入数据一个读取数据:
public string SaveData(System.Web.HttpContext app)
{
System.Web.HttpRequest req = app.Request; var db = Entity.SqlDB.GetInstance("mts");
int i = ;
Entity.WIFI_AUTO_COUNT wic = new Entity.WIFI_AUTO_COUNT();
if (db.Queryable<Entity.WIFI_AUTO_COUNT>().Any())
{
DataTable dt = db.Queryable<Entity.WIFI_AUTO_COUNT>().ToDataTable();
int curr_times = Convert.ToInt32(dt.Rows[][].ToString());
wic.TIMES = (curr_times + ).ToString();
i = db.Updateable(wic)
.UpdateColumns(it => new { it.TIMES })
.Where(it => it.FID == "test_key")
.ExecuteCommand();
}
else
{
wic.FID = "test_key";
wic.TIMES = ""; i = db.Insertable(wic).ExecuteCommand();
} MesLog.Logs.AddHourLog(req.Url.ToString());
return "ok";
} public string GetData(System.Web.HttpContext app)
{
System.Web.HttpRequest req = app.Request; var db = Entity.SqlDB.GetInstance("mts"); var json = db.Queryable<Entity.WIFI_AUTO_COUNT>().Select(it => new { Times = it.TIMES }).ToJson(); if (req["callback"] != null)
{
return req["callback"].Trim() + "([" + json + "])";//支持Jsonp
} return json;
}
wifi连接这一部分可以选择固定IP地址以及网关,也可以采用自动获取,Api 需要根据实际需求来编写,接收客户端的调用。
将资料写入至模块以后,我们可以通过Arduion 里面的工具-->Serial Monitor 将调试信息输出来,看看是否正确,最终的效果如下图所示:
我也顺应潮流,开通了微信公众号,后续会将博客园的文章同步至公众号!
关注以下公众号,您将获得更多资讯!
如果您觉得该文章对您有帮助,请帮忙点个赞,感谢!!
生产追溯系统-Wifi+传感器,实现计数器以及监控机器是否停止的更多相关文章
- 生产追溯系统-Raspberry Pi帮助我们节省大量硬件成本,助力信息化建设
初识 Raspberry Pi 竟然有这么小的电脑主机?只有手掌这么大?电源线竟然跟手机数据线一样?当我第一次看到Raspberry Pi的时候,在脑海中产生了一连串的疑问,带着这些疑问逐渐开始研究这 ...
- 生产制造追溯系统-通过微信小程序实现移动端报表平台
前言 前两篇文章主要梳理了一下在生产过程中如何更高效.更稳定的实现条码打印,有不少园子里的朋友私信我,互相讨论了一些技术方面的问题,双方都各有收获,再此感谢博客园提供的这个交流平台,让五湖四海的朋友能 ...
- 系统内存和CPU管理、监控
本博文的主要内容有 .系统内存管理.监控:vmstat和free -mt .系统CPU管理.监控:sar -u.mpstat.uptime linux系统内存和CPU是在系统运行的过程中不断消耗的资源 ...
- Python 基于Python结合pykafka实现kafka生产及消费速率&主题分区偏移实时监控
基于Python结合pykafka实现kafka生产及消费速率&主题分区偏移实时监控 By: 授客 QQ:1033553122 1.测试环境 python 3.4 zookeeper- ...
- 生产制造追溯系统-IQC来料检验
前言 相信大家都知道,任何一家工厂都有自己的仓库,用来存储采购回来的物料,那么在供应商将我们采购的物料送到工厂之后,我们都需要一个检验动作,也就是今天要说的===>IQC来料检验,这个检验动作是 ...
- 基于Web的制造追溯系统DEMO
写在前面 本文不贴任何代码,以图片为主,也许图片更直观,请各位园友谅解! 很久没有写过博客了,这是2016年的第一篇文章:最近主要是忙着完成公司的一个新项目,逛园子的时间都明显少了,只有下班回到家睡觉 ...
- ECU 自动化生产测试系统
概述 ECU(Electronic Control Unit) 是现代车辆中最重要的部件之一,其稳定性.可靠性对车辆安全性的影响至关重要.如何保证ECU 生产质量和效率.如何在生产过程中对ECU 进行 ...
- android获取系统wifi状态等
WIFI 获取WIFI状态 WifiManager wifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE); ...
- 机器学习入门18 - 生产机器学习系统(Production ML Systems)
除了实现机器学习算法之外,机器学习还包含许多其他内容.生产环境机器学习系统包含大量组件.无需自行构建所有内容,而是应该尽可能重复使用常规机器学习系统组件.通过了解机器学习系统的一些范例及其要求,可以明 ...
随机推荐
- RSA签名
RSA签名: /** * RSA签名 * @param content 待签名数据 * @param privateKey 商户私钥 * @return 签名值 */public static ...
- JavaWeb学习总结(十七)——JSP中的九个内置对象(转)
一.JSP运行原理 每个JSP 页面在第一次被访问时,WEB容器都会把请求交给JSP引擎(即一个Java程序)去处理.JSP引擎先将JSP翻译成一个_jspServlet(实质上也是一个servlet ...
- 【CF1016B】Segment Occurrences(模拟)
题意:给定两个串s和t,多次询问s的一个区间[l ,r]中有多少个子串与t串相同 len<=1e3,q<=1e5 思路:前缀和 #include<cstdio> #includ ...
- javap的基本用法
参考:http://www.cnblogs.com/beautiful-code/p/6424977.html javap是JDK自带的反汇编器,可以查看java编译器为我们生成的字节码.通过它,我们 ...
- POJ 3368.Frequent values-处理数据+RMQ(ST)
昨天写的博客删了,占坑失败,还是先把RMQ玩的6一点再去搞后面的东西.废话少说,题解题姐姐_(:з」∠)_ Frequent values Time Limit: 2000MS Memo ...
- T1155 金明的预算方案 codevs
累~~~ http://codevs.cn/problem/1155/ 题目描述 Description 金明今天很开心,家里购置的新房就要领钥匙了,新房里有一间金明自己专用的很宽敞的房间.更让他高 ...
- char 转string
c++: string.c_str() ---------> c: char c; string str;stringstream stream;stream << ...
- k8s之存储卷及pvc
1.存储卷概述 因为pod是有生命周期的,pod一重启,里面的数据就没了,所以我们需要数据持久化存储,在k8s中,存储卷不属于容器,而是属于pod,也就是说同一个pod中的容器可以共享一个存储卷,存储 ...
- UVALive - 3700 Interesting Yang Hui Triangle
题目大意就是求一下 杨辉三角的第N行中不能被P整除的有多少个. 直接卢卡斯定理一下就行啦. #include<bits/stdc++.h> #define ll long long usi ...
- SpringBoot系列之(一)helloworld!
要说什么最流行,现阶段肯定是Springboot和Springcloud,在Spring官方网站上第一个就是springboot,可见对springboot的重视程度.主要原因springboot集成 ...