一、前言

Qt的跨平台特性是非常厉害的,本来作为C++来说,跨平台的特性比JAVA还要好,只不过学习难度更大,所以大家更理解的跨平台是JAVA,Qt的跨平台特性是我见过的所有开发环境和语言中最厉害的,据说现在还能跑在部分MCU单片机上,本来Qt的发家起步就是在linux系统上,嵌入式linux上应用比较多,只不过最近十年来,由于安卓的迅猛发展,逐步被蚕食了一些市场,还剩一些跑安卓卡爆了的配置很低的硬件上,这些场景非Qt莫属了,完全能够胜任,个人跑过最低配置的是128MB内存256MB存储的硬件,没有图形界面,就跑一个Qt图形程序开机启动,很灵活,整个UI系统都靠自己来实现,当然意味着代码量比较多,比如网络IP地址设置等,需要自己更改脚本文件内容来实现,不像安卓直接调用函数库即可。

做这个项目也有跨平台的要求,因为客户除了大部分使用的是WIN系统电脑,还有部分用的是苹果MAC电脑已经ubuntu系统的,从安全性角度考虑,win是最不安全的,我们熟知的大部分病毒都是win上的,而在linux系统上大部分歇菜,所以如果是对安全性要求很高的部门,建议使用linux系统,还可以防止保安吃饱了没事干在电脑上玩蜘蛛纸牌,东搞搞西搞搞最后搞得程序都中毒或者无法正常工作了,linux上就没有这个烦恼,一般人对该系统不熟悉尤其是保安,游戏肯定是没得玩了,只要教会他开机运行的这个软件的基本操作就行。

皮肤开源:https://gitee.com/feiyangqingyun/QWidgetDemo https://github.com/feiyangqingyun/QWidgetDemo 文件名称:styledemo

体验地址:https://gitee.com/feiyangqingyun/QWidgetExe https://github.com/feiyangqingyun/QWidgetExe 文件名称:bin_sams.zip

二、功能特点

  1. 采集数据端口,支持串口端口+网络端口,串口支持自由设置串口号+波特率,网络支持自由设置IP地址+通讯端口,每个端口支持采集周期,默认1秒钟一个地址,支持设置通讯超时次数,默认3次,支持最大重连时间,用于重新读取离线的设备。
  2. 控制器信息,能够添加控制器名称,选择控制器地址+控制器型号,设置该控制器下面的探测器数量。
  3. 探测器信息,能够添加位号,可自由选择探测器型号,气体种类,气体符号,高报值,低报值,缓冲值,清零值,是否启用,报警声音,背景地图,存储周期,数值换算小数点位数,报警延时时间,报警的类型(HH,LL,HL)等。
  4. 控制器型号+探测器型号+气体种类+气体符号,均可自由配置。
  5. 地图支持导入和删除,所有的探测器对应地图位置可自由拖动保存。
  6. 端口信息+控制器信息+探测器信息,支持导入导出+导出到excel+打印。
  7. 运行记录+报警记录+用户记录,支持多条件组合查询,比如时间段+控制器+探测器等,所有记录支持导出到excel+打印。
  8. 导出到excel的记录支持所有excel+wps等表格文件版本,不依赖excel等软件。
  9. 可删除指定时间范围内的数据,支持自动清理早期数据,设置最大保存记录数。
  10. 支持报警短信转发,支持多个接收手机号码,可设定发送间隔,比如即时发送或者6个小时发送一次所有的报警信息,短信内容过长,自动拆分多条短信。
  11. 支持报警邮件转发,支持多个接收邮箱,可设定发送间隔,比如即时发送或者6个小时发送一次所有的报警信息,支持附件发送。
  12. 高报颜色+低报颜色+正常颜色+0值颜色+曲线背景+曲线颜色等,都可以自由选择。
  13. 软件的中文标题+英文标题+logo路径+版权所有都可以自由设置。
  14. 提供开关设置开机运行+报警声音+自动登录+记住密码等。
  15. 报警声音可设置播放次数,界面提供17种皮肤文件选择。
  16. 支持云端数据同步,可设置云端数据库的信息,比如数据库名称,用户名+密码等。
  17. 支持网络转发和网络接收,网络接收开启后,软件从udp接收数据进行解析。网络转发支持多个目标IP,这样就实现了本地采集的软件,自由将数据转到客户端,随时查看探测器数据。
  18. 自动记住用户最后停留的界面+其他信息,重启后自动应用。
  19. 报警自动切换到对应的地图,探测器按钮闪烁。
  20. 双击探测器图标,可以进行回控。
  21. 支持用户权限管理,管理员+操作员两大类,用户登录+用户退出,可以记住密码和自动登录,超过三次报错提示并关闭程序。
  22. 支持四种监控模式,设备面板监控+地图监控+表格数据监控+曲线数据监控,可自由切换,四种同步应用。
  23. 支持报警继电器联动,一个位号可以跨串口联动多个模块和继电器号,支持多对多。
  24. 本地数据存储支持sqlite+mysql,支持远程数据同步到云端数据库。自动重连。
  25. 本地设备采集到的数据实时上传到云端,以便手机APP或者web等其他方式提取。
  26. 支持两种数据源,一种是串口和网络通过协议采集设备数据,一种是数据库采集。数据库采集模式可以作为通用的系统使用。
  27. 自带设备模拟工具,支持16个设备数据模拟,同时还带数据库数据模拟,以便在没有设备的时候测试数据。
  28. 默认通信协议采用modbus协议,后期增加mqtt等物联网协议的支持,做成通用系统。
  29. 支持所有windows操作系统+linux操作系统和其他操作系统。

三、效果图

qt串口通信_Qt编写气体安全管理系统29-跨平台相关推荐

  1. 详解 Qt 串口通信程序全程图文 (2)

    Qt 串口通信程序全程图文是本文介绍的内容,上一部分中已经介绍了实现最简单的串口接收程序的编写,下面将对程序内容进行分析. 1.首先应说明操作串口的流程 步骤一:设置串口参数,如:波特率,数据位,奇偶 ...

  2. 【转】[Qt教程] Qt串口通信全新专题

    版权声明 该文章原创于Qter开源社区(www.qter.org),转载请注明出处! 软件:QCom跨平台串口调试助手! 更新提示 这次源码更新,与前面"串口通信专题"主要有下面两 ...

  3. qt linux 串口eventdriven,详解 Qt 串口通信程序全程图文 (1)

    Qt 串口通信程序全程图文 是本文介绍的内容,在Qt中并没有特定的串口控制类,现在大部分人使用的是第三方写的qextserialport类,我们这里也是使用的该类.我们可以去 http://sourc ...

  4. QT综合示例:QT串口通信

    QT综合示例:QT串口通信 0.界面: 1.代码: 如果用qt写程序作为上位机,然后通过和usb和下位机通信的时候,就需要用到qt中的串口通信了. 0.界面: 1.代码: 1).pro 添加: QT ...

  5. 详解 Qt 串口通信程序全程图文 (5)

    Qt 串口通信程序全程图文是本文介绍的内容,本节也是最后一节,本节主要讲述的是解决一下重要问题的说明: (下面所说的第一个程序是指第一节中写的那个程序,第二个程序是指第三节更改完后的程序,第三个程序是 ...

  6. 详解 Qt 串口通信程序全程图文 (4)

    Qt 串口通信程序全程图文是本文介绍的内容,本文一开始先讲解对程序的改进,在文章最后将要讲解一些重要问题. 1.在窗口中加入一些组合框Combo Box,它们的名称及条目如下: 串口:portName ...

  7. 详解 Qt 串口通信程序全程图文 (3)

    Qt 串口通信程序全程图文是本文要介绍的内容,下面的程序在第一部分中所写的程序上进行了一些改进.加入打开和关闭串口,发送数据等功能. 1.加入了"打开串口","关闭串口& ...

  8. 详解 Qt 串口通信程序全程图文 (1)

    Qt 串口通信程序全程图文 是本文介绍的内容,在Qt中并没有特定的串口控制类,现在大部分人使用的是第三方写的qextserialport类,我们这里也是使用的该类.我们可以去 http://sourc ...

  9. android qt 串口通信,Qt串口通信开发之QSerialPort模块详细使用方法与实例

    Qt串口通信开发之QSerialPort模块详细使用方法与实例 发布时间:2020-10-23 12:19:05 来源:脚本之家 阅读:111 作者:沧海一笑-dj Qt串口通信基础及名词说明 串口通 ...

最新文章

  1. 单片AT89C2051 + SD卡 + 3310LCD = 音乐播放器
  2. 上拉电阻和下拉电阻的作用详解
  3. Android权限申请的学习实践
  4. CSS文件添加 @charset utf-8; 可能会引起样式在IE6下失效
  5. php 京东首页分类导航,仿京东导航栏
  6. redis启动后出现WARNING you have Transparent Huge Pages (THP) support enabled in your kernel问题...
  7. Java 线程状态---WAITING(部分转载)
  8. 【算法】剑指 Offer 25. 合并两个排序的链表
  9. Linux常用命令--iconv
  10. OpenCV精进之路(零):HighGUI——读写XML和YML文件
  11. android 常见的异常,Android 几个常见异常且容易被忽略的地方
  12. 微信小程序 获取cookie 以及设置 cookie
  13. zoj 1100 - Mondriaan#39;s Dream
  14. 文件源路径太长无法删除
  15. java试题库管理系统源代码_题库聚合源码_有没有人有试题库管理系统的源代码啊基于java web的_淘题吧...
  16. 分享一款免费刷相关搜索、联想下拉推荐、网页快照排名的软件
  17. 【IT软技能】如何使用中文维基百科
  18. 谈谈时间管理--陶哲轩
  19. 批量解压多个rar压缩包并将解压出来的文件以该压缩包的名称重命名
  20. chrome浏览器怎么模拟手机访问网页(已測OK)

热门文章

  1. [wbia 1.1] heritrix抓取网页信息
  2. 【二叉树迭代版前序遍历】LeetCode 144. Binary Tree Preorder Traversal
  3. Leetcode 1143.最长公共子序列(求长度)
  4. 【机器学习】端到端机器学习实践
  5. 中断占用CPU的时间分析
  6. latex中设置标题左对齐
  7. Linux 基本命令(七)--cat,less,more,head,tail,nl 常用命令
  8. 一套代码小程序WebNative运行的探索03——处理模板及属性
  9. vuejs+webpack环境搭建
  10. Delphi LiveBinds组件