QT上位机开发(网络程序界面开发)

2024-01-06 00:28

本文主要是介绍QT上位机开发(网络程序界面开发),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        传统的上位机对接方式还是以232、485、can为主,随着网络的发展,越来越多的设备都是以网络进行通信的。毕竟相比较之前,网络通信的方式太多了,设备之间仅需要交换机、路由器就可以通信,不需要放在一起。传统消费领域的网络通信,一般是电脑和电脑之间的通信。而工业领域,网络通信更多是设备和设备之间的通信,设备本身除了网络之外,还有其他用途的。比如,这个设备可能是做调度的,另外一个设备做数控的等等。

1、工业生产中的网络有哪几种形式

        这取决于设备本身是移动的机器人、pad设备,还是固定的作业设备。如果是机器人,或者是pad设备,那么在工厂车间内肯定要布置wifi信号,至于2.4g还是5g,可以根据自己的情况决定。当然,如果都是固定的生产设备,使用有线网络也是不错的选择。

2、使用udp还是tcp

        udp比较适合网络较差的作业环境,tcp适合网页较好的作业环境。当然,如果网络真的不算好,作为移动设备来说,自身的安全检测一定要非常到位才行。

3、网络协议如何写

        对于业务人员来说,网络协议越简单越好,最好是xmlrpc这种协议。客户设备如果已经有协议的,尽量让客户提供标准的sdk协议。如果客户自身也没有协议,那就约定一个简单的协议,比如http协议等等,用postman确定没问题了之后再进行写代码验证。

4、网络转换设备是什么情况

        由于上位机软件设备一般自带的接口数量是有限的,比如有限的232、485、can和usb。所以这个时候,如果上位机想扩展一下访问的设备数,但是没有对应的接口,这个时候网络转换设备就发挥作用了。网上有很多的网络转io、网络转232、网络转485设备,它们价格不贵,配置也很简单,使用起来十分方便。用户需要做的,就是把232/485报文转成网络报文,发送出去就好了。此外,接收也是一样。

5、网络sdk的选择

        在c++这一块,要编写c++网络代码,有三种选择。一种是使用windows network api编程;一种是使用boost编程;剩下来一种是使用qt专门的网络api编程。这方面,我倒是建议优先用boost和windows network api编程。前者有跨平台的优势,后者使用比较简单和方便,学会了就算不用qt也能自己写控制台程序。相比较而言,我倒是不建议选择qt网络编程,毕竟学会了只是用在qt平台而已,适用范围远远没有前两者那么广泛。

6、网络调试

        网络中出问题是很正常的,这个时候就要好好准备几个工具了。第一,使用ping命令验证是否在线;第二,使用pinginfoview查看丢包率;第三,使用postman查看http api接口收发是否ok;第四,也是运用最广泛的,那就是wireshark抓包大法,几乎可以解决所有的网络问题。

7、网络界面开发和验证

        如果对网络有兴趣,大家可以自己写一个server、client程序。两个程序用qt和designer把界面画出来,直接用windows network api写程序就可以了。而且,两个程序可以部署在同一台电脑上面,这样也能方便测试。这里先给出了server的参考设计界面,

        接着给出了client的参考设计界面。因为如果是client部分,其实稍微修改下即可,

这篇关于QT上位机开发(网络程序界面开发)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/574629

相关文章

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

Hadoop企业开发案例调优场景

需求 (1)需求:从1G数据中,统计每个单词出现次数。服务器3台,每台配置4G内存,4核CPU,4线程。 (2)需求分析: 1G / 128m = 8个MapTask;1个ReduceTask;1个mrAppMaster 平均每个节点运行10个 / 3台 ≈ 3个任务(4    3    3) HDFS参数调优 (1)修改:hadoop-env.sh export HDFS_NAMENOD

嵌入式QT开发:构建高效智能的嵌入式系统

摘要: 本文深入探讨了嵌入式 QT 相关的各个方面。从 QT 框架的基础架构和核心概念出发,详细阐述了其在嵌入式环境中的优势与特点。文中分析了嵌入式 QT 的开发环境搭建过程,包括交叉编译工具链的配置等关键步骤。进一步探讨了嵌入式 QT 的界面设计与开发,涵盖了从基本控件的使用到复杂界面布局的构建。同时也深入研究了信号与槽机制在嵌入式系统中的应用,以及嵌入式 QT 与硬件设备的交互,包括输入输出设

OpenHarmony鸿蒙开发( Beta5.0)无感配网详解

1、简介 无感配网是指在设备联网过程中无需输入热点相关账号信息,即可快速实现设备配网,是一种兼顾高效性、可靠性和安全性的配网方式。 2、配网原理 2.1 通信原理 手机和智能设备之间的信息传递,利用特有的NAN协议实现。利用手机和智能设备之间的WiFi 感知订阅、发布能力,实现了数字管家应用和设备之间的发现。在完成设备间的认证和响应后,即可发送相关配网数据。同时还支持与常规Sof

活用c4d官方开发文档查询代码

当你问AI助手比如豆包,如何用python禁止掉xpresso标签时候,它会提示到 这时候要用到两个东西。https://developers.maxon.net/论坛搜索和开发文档 比如这里我就在官方找到正确的id描述 然后我就把参数标签换过来

Linux 网络编程 --- 应用层

一、自定义协议和序列化反序列化 代码: 序列化反序列化实现网络版本计算器 二、HTTP协议 1、谈两个简单的预备知识 https://www.baidu.com/ --- 域名 --- 域名解析 --- IP地址 http的端口号为80端口,https的端口号为443 url为统一资源定位符。CSDNhttps://mp.csdn.net/mp_blog/creation/editor

ASIO网络调试助手之一:简介

多年前,写过几篇《Boost.Asio C++网络编程》的学习文章,一直没机会实践。最近项目中用到了Asio,于是抽空写了个网络调试助手。 开发环境: Win10 Qt5.12.6 + Asio(standalone) + spdlog 支持协议: UDP + TCP Client + TCP Server 独立的Asio(http://www.think-async.com)只包含了头文件,不依

Linux_kernel驱动开发11

一、改回nfs方式挂载根文件系统         在产品将要上线之前,需要制作不同类型格式的根文件系统         在产品研发阶段,我们还是需要使用nfs的方式挂载根文件系统         优点:可以直接在上位机中修改文件系统内容,延长EMMC的寿命         【1】重启上位机nfs服务         sudo service nfs-kernel-server resta

poj 3181 网络流,建图。

题意: 农夫约翰为他的牛准备了F种食物和D种饮料。 每头牛都有各自喜欢的食物和饮料,而每种食物和饮料都只能分配给一头牛。 问最多能有多少头牛可以同时得到喜欢的食物和饮料。 解析: 由于要同时得到喜欢的食物和饮料,所以网络流建图的时候要把牛拆点了。 如下建图: s -> 食物 -> 牛1 -> 牛2 -> 饮料 -> t 所以分配一下点: s  =  0, 牛1= 1~

【区块链 + 人才服务】区块链集成开发平台 | FISCO BCOS应用案例

随着区块链技术的快速发展,越来越多的企业开始将其应用于实际业务中。然而,区块链技术的专业性使得其集成开发成为一项挑战。针对此,广东中创智慧科技有限公司基于国产开源联盟链 FISCO BCOS 推出了区块链集成开发平台。该平台基于区块链技术,提供一套全面的区块链开发工具和开发环境,支持开发者快速开发和部署区块链应用。此外,该平台还可以提供一套全面的区块链开发教程和文档,帮助开发者快速上手区块链开发。