前面已实现了,硬件链接到远程服务器。现在为了用户使用与用户实时查看,这里面有两个方法,一个是保存到数据库用户看的时候直接从数据库里面读取,一般的都是使用消息队列进行数据的写入,这里主要实现一下硬件数据实时展示到Web 的Ui的界面,达到实时的效果。下面是上次的代码修改而来的

 var byteBuffer = message as IByteBuffer;var temp = byteBuffer.GetShort(0);var temph = temp >> 4;var templ = temp & 0x0f;templ = templ * 6 / 10;var info = (temph % 100) / 10 + "" + (temph % 100) % 10 + "." + templ + "℃";var buffer = DotNetty.Buffers.Unpooled.WrappedBuffer(byteBuffer);if (_connection.State == HubConnectionState.Connected){await _connection.InvokeAsync("SendMessage", "STC89C52", info);}else{IniSignlar();}var rmtPoint = context.Channel.RemoteAddress as IPEndPoint;//packet.RemoteIp = rmtPoint.Address.ToString();//packet.RemotePort = rmtPoint.Port;_logger.LogInformation($"reviced Datetime={DateTime.Now},远程地址:{rmtPoint.Address.ToString()},端口:{rmtPoint.Port},TSC89C52,DS18B20 Value={info}");_logger.LogInformation($"reviced wendu data={ByteBufferUtil.PrettyHexDump(byteBuffer)}");

下面是前端代码:

<script src="~/js/jquery-1.11.0.min.js"></script>
<script src="~/lib/signalr/dist/browser/signalr.js"></script><script>function getNowFormatDate() {var date = new Date();var seperator1 = "-";var seperator2 = ":";var month = date.getMonth() + 1;var strDate = date.getDate();if (month >= 1 && month <= 9) {month = "0" + month;}if (strDate >= 0 && strDate <= 9) {strDate = "0" + strDate;}var currentdate = date.getFullYear() + seperator1 + month + seperator1 + strDate+ " " + date.getHours() + seperator2 + date.getMinutes()+ seperator2 + date.getSeconds();$("#time").text(currentdate);}var connection = new signalR.HubConnectionBuilder().withUrl("/chatHub").build();connection.on("ReceiveMessage", function (user, message) {var msg = message.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");$("#wendu").html(msg);getNowFormatDate();});connection.start().catch(function (err) {return console.error(err.toString());});</script>

这样就实现了,全部的功能,

这个demo基本就完成了,所以说C#来做IOT感觉比其他的语言更合适一些,我使用的Core 2.2这个可以发布到服务器,也可以发布到ARM的小的网关上,目前测试发布到树莓派3是没有问题,使用树莓派官方系统。后面我们也在做工业物联网,与车联网的项目,后面有时间会陆续与大家分享一下,C#实现的IOT方面的经验

5,C# 物联网温度采集系统开发,web手机端口进行控制远程硬件实现与温湿度实时显示(五)相关推荐

  1. 3,C# 物联网温度采集系统开发,STC51,DS18B20 温度采集上位机C# 的开发,与51程序的开发(三)

    前现大约几周的时候把硬件的选型与硬件连接搞定了,接下来就开始进行芯片开发了,单片机用的是STC的,温度传感器是美信的,接下来写一个温度读取的单片机的程序,我使用的是Keill 5  烧录软件也是官方提 ...

  2. W3C近期要闻:与Mozilla MDN合作联合开发Web平台文档

    作者 | W3C中国 「OpenWeb开发者」依托于BOW(Brillant Open Web)团队,是一个专门的 Web 技术建设小组,致力于推动 Open Web 技术的发展,将不定期为读者同步W ...

  3. 温度记录仪开发_TinkerNode NBIoT物联网开发板

    点击上方蓝色字体,关注我们 最近很多朋友问我如何选购合适的NB-IoT模组,于是本篇博文给各位朋友安利一款DF创客社区最新出品的NB-IoT 开发板:TinkerNode NB-IoT 物联网开发板, ...

  4. 视频教程-微信公众平台深度开发v2.0第6季——微信WEB开发、手机WEB技术-微信开发

    微信公众平台深度开发v2.0第6季--微信WEB开发.手机WEB技术 微信企业号星级会员.10多年软件从业经历,国家级软件项目负责人,主要从事软件研发.软件企业员工技能培训.已经取得计算机技术与软件资 ...

  5. 基于互联网的温度采集系统

    1 绪论... 1 1.1 课题背景... 1 1.2 研究内容... 1 1.3 发展前景... 1 1.4 研究意义... 2 2. 开发平台介绍... 2 2.1 开发环境... 2 2.2 操 ...

  6. 探索最佳物联网全栈开发之道 | 附 PPT 下载

    作者 | 苏宓 责编 | 苏宓 微信公众号ID | csdn_iot 万物互联时代,随着国外的谷歌.微软,国内的阿里.华为.百度等诸多行业巨头纷纷入局,物联网迎来的新的浪潮,将更多的商机及机遇呈现出来 ...

  7. 一天掌握物联网全栈开发之道 | 附 PPT 下载

    万物互联时代,随着国外的谷歌.微软,国内的阿里.华为.百度等诸多行业巨头纷纷入局,物联网迎来的新的浪潮,将更多的商机及机遇呈现出来,无数创业者及开发者纷至沓来,希望从中可分一杯羹.然而在庞大的物联体系 ...

  8. python开发web应用打包exe,python开发web应用程序

    python做web开发有哪些好处和不足 python适合Web开发吗?当然!python涉及的面十分广泛,不过使用python进行开发,你需要先掌握python的基础知识,然后学习python We ...

  9. (开源)STC89c51结合ESP8266制作物联网环境监测系统+APP inventor制作手机App实时显示

    STC89c51结合ESP8266制作物联网环境监测系统+APP inventor制作手机App实时显示 第一 .先上效果图 第二.原理讲解 第三.c51读取各种传感器数值 第四.传感器数据推送到云端 ...

最新文章

  1. DELL R710 服务器内存排错
  2. 简单的Java双亲委派机制
  3. 中国科学:拟南芥二半萜类化合物调控根系微生物组
  4. CentOS7和其他版本的虚拟机,防火墙命令等各种相关笔记
  5. Spring源代码学习之How is Beans.xml loaded and parsed
  6. 前端学习(1667):前端系列实战课程之拖拽
  7. Mybatis 常用语句
  8. 结构体数组(SoA)与数组结构体(AoS)
  9. mysql删除重复记录语句的方法
  10. Clob 2 String
  11. django数据库增删改查操作
  12. c语言putchar_C语言写一个小程序,胖胖的爱心桃
  13. 上市公司创新研发支出数据(2006-2018年)
  14. Python实现对文件内容进行加密
  15. ubuntu20安装gdb插件gef的爬坑记录
  16. 特殊的数独身数,:水仙花数, 四叶玫瑰数, 五角星数, 六合数 ,北斗七星数, 八仙数, 九九重阳数 ,十全十美数...
  17. 只需三步!使用3DCG软件Blender制作时尚图片
  18. Ph P Manual
  19. 室内定位算法_【好设计论文】基于行人航迹推算的室内定位算法研究
  20. (附源码)spring boot基于微信小程序的口腔诊所预约系统 毕业设计 201738

热门文章

  1. 微信、QQ可以聊天,但是网页打不开,解决方法之一
  2. PhotoZoom中如何调整预设
  3. 为什么选择PhotoZoom处理图像无损放大
  4. 计算机毕业设计springboot实验填报系统
  5. 基于vuex的物业管理系统APP及网页后台设计
  6. Unity制作安装程序并写入注册表
  7. win10 取消系统自动更新的方法-3种(所有最新版本都适用)
  8. win10已达到计算机的连接数量最大值,win10系统共享提示“达到连接数目限制”的办法...
  9. 中望3D2022 尺寸标注(标注圆弧或曲线最高点、最低点)
  10. ORA-20000故障排除手记