上位专题

可测试,可维护,可移植:上位机软件分层设计的重要性

互联网中,软件工程师岗位会分前端工程师,后端工程师。这是由于互联网软件规模庞大,从业人员众多。前后端分别根据各自需求发展不一样的技术栈。那么上位机软件呢?它规模小,通常一个人就能开发一个项目。它还有必要分前后端吗? 有必要。本文从三个方面论述。分别是可测试,可维护,可移植。 可测试 软件黑盒测试更普遍,但很难覆盖所有应用场景。于是有了接口测试、模块化测试以及单元测试。都是通过降低测试对象

C++ 上位软件通过Snap7开源库访问西门子S7-1200/S7-1500数据块的方法

C++ 上位软件通过Snap7开源库访问西门子S7-1200/S7-1500数据块的方法

C#编写上位机通过OPC DA读取西门子PLC数据

Sync_RW 引用:Quick.OpcComRcw 文档中原程序会报错: 原因:需要在安装有Simatic NET V14的电脑上运行这个程序。 需要注释掉下面程序,否则读取时会无故障提示退出。 //finally里的程序要注释掉,否则一点击read按钮,程序会直接无故障提示退出//finally//{// // Free the unmanaged memory/

C#上位机使用Microsoft.Office.Interop.Excel和EPPlus库对Excel或WPS表格进行写操作

C#上位机使用Microsoft.Office.Interop.Excel和EPPlus库对Excel或WPS表格进行写操作 一、使用Microsoft.Office.Interop.Excel库 1、通过NuGet包管理器添加引用 按照下图中红框所示进行操作。 需要安装Microsoft.Office.Interop.Excel包 添加Microsoft Office 16.0 Obje

搭建IPsec VPN隧道解决PLC设备与主控上位机无法使用公网IP进行通信的问题

问题描述 按照初设规定,每个工程点位都要安装一条具有独立公网IP的光纤专线,供该点位的视频监控设备、水质监测设备及PLC设备与外界进行通信。而在项目开发前期并没有意识到,组态软件(上位机)无法通过公网IP地址连接PLC,导致在交付后期PLC设备无法与主控进行通信。 后经过了解得知可以在控制室网络与各PLC所属网络之间搭建VPN隧道,使得两个网络之间可以像局域网那样相互访问。 VPN技术 V

Renesa Version Board开发RT-Thread 之Client(WIFI)和上位机的数据传输

目录 概述 1 系统框架 1.1  模块介绍 1.1 Version-Board 开发板 1.1.1 Vision-Board简介 1.1.2 Vision-Board的资源 1.2 框架介绍 2 上位机App 2.1 UI设计  2.2 代码实现 3 功能测试 3.1 网络连接 3.2 功能测试 概述 本文主要Renesa Version Board开发RT

VS2019开发CAN上位机

1、CAN分析仪,主要功能就是把CAN信号转换成电脑能接收的USB信号。索引号是指电脑连接了几台CAN分析仪设备,一般情况下都是一台,该值为0。不同CAN盒的二次开发文件不同 2、CAN上位机一般只能适应一个CAN盒,如果需要实现多个CAN盒通信,那么需要加入多个CAN盒驱动 3、一般选择在别人提供的CAN程序上进行二次开发,例如周立功,广成等等 4、以周立功为例  : 函数/例程下载 (z

电单车TCP通讯协议对接phpworkermanHikversion充电桩上位机通讯协议

采用0x7e表示,若检验码、消息头以及消息体中出现0x7e,则要进行转义处理 <?php// +----------------------------------------------------------------------// | GAGACQ [ GAGACQ软件定制开发 ]// +----------------------------------------------

硬件与上位机之间常用的协议帧

这次有必要好好弄清楚协议帧怎么定义: 帧头: A5 5A  (2字节) 数据包长度: 低八位在前,高八位在后  (2字节) 包名: cmd,低八位在前,高八位在后  (2字节) 之后是真正的数据包  (不定长,长度在数据包长度: 低八位在前,高八位在后  (2字节)表示) CRC校验:低八位在前,高八位在后  (2字节) 帧尾:0D 0A    两字节 高低8位,进制转换:

EtherCAT运动控制器上位机开发之Python+Qt(三):PDO配置与SDO读写

ZMC408CE控制器硬件介绍 ZMC408CE是正运动推出的一款多轴高性能EtherCAT总线运动控制器,具有EtherCAT、EtherNET、RS232、CAN和U盘等通讯接口,ZMC系列运动控制器可应用于各种需要脱机或联机运行的场合。 ZMC408CE支持8轴运动控制,最多可扩展至32轴,支持直线插补、任意圆弧插补、空间圆弧、螺旋插补、电子凸轮、电子齿轮、同步跟随等功能。 ZMC

QT C++上位机软件开发,相比较C#上位机软件开发,有哪些特点和区别

在开发上位机软件时,选择使用Qt C++还是C#取决于多种因素,包括项目需求、团队技能、开发速度等因素。下面是一些Qt C++与C#在上位机软件开发中的特点和区别: Qt C++的特点: 跨平台:Qt C++支持多种平台,包括Windows、macOS、Linux等,而且支持嵌入式系统,如Android和iOS。性能:C++是一种编译型语言,通常提供更好的性能,尤其是在图形处理和实时处理方面。

上位机图像处理和嵌入式模块部署(mcu和swd接口)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         最近学习mcu的时候,接触了不少调试器,这里面有daplink、st-link v2、j-link v9。虽然模块的形状可能不太一样,但是硬件的连线都差不多,都是mcu上的3.3v、clk、dio和gnd四根连线。出于好奇,今天花了点时间了解了一下debug port、sw

扫码称重上位机

目录 一 设计原型 二 后台代码 一 设计原型 模拟工具: 二 后台代码 主程序: using System.IO.Ports;using System.Net;using System.Net.Sockets;using System.Text;namespace 扫码称重上位机{public partial class Form1 : Fo

.NET 上位机通讯 NModbus4 的使用教程

使用nuget引入NModbus4 RTU 示例 1,串口通信示例 // // RTU SerialPort serialPort = new SerialPort("COM2", 9600, Parity.None, 8, StopBits.One);serialPort.Open();ModbusMaster master = ModbusSerialMaster.CreateRtu(s

上位机图像处理和嵌入式模块部署(mcu之静态库生成和使用)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         很多同学做了很长时间的mcu和keil开发,都认为keil工程中必须包含所有的源代码,其实这是不对的。如果有一些代码我们不希望别人看到,那么就可以把h文件和lib文件提供给别人,这样就避免了代码暴露的风险。甚至于说,我们也可以自己来实现dll的调用,动态加载算法插件,这都是

SerialChart上位机使用详解

SerialChart 上位机 软件分为三个区域:接收数据区,用于显示串口接收的数据。参数配置区,用于配置串口参数和显示参数。波形显示区,显示串口数据的波形。 在参数配置区写入串口号,波特率,通道波形颜色等,然后点击运行按钮即可。当串口接收到数据时,接收数据区和波形显示区都会有相应的显示。该软件可以同时显示多个通道的波形,直接按照格式添加通道名称和对应的波形颜色即可。 数据格式 每一帧

信捷PLC与上位机通讯-以太网通讯dll

应用场景 最近做项目,电气部分PLC选用了国产的信捷PLC,需要考虑上位机与信捷PLC通讯的问题,直接读写寄存器或线圈。 解决方案 信捷官网找资料,介绍的各种通讯方法,感觉都不是很好理解,而且也没办法直接拿来用。然后网上找教程也基本没有,csdn资源还要收费、收积分,而且下载了也不一定好用。最后还是好不容易在信捷的官网找到了这样一篇文章和资源。 链接:https://college.xin

基于FINS协议的OMRON PLC与上位机以太网通信的实现

基于FINS协议的OMRON PLC与上位机以太网通信的实现[多图] 0 引言 在当代工业自动化控制系统中,可编程逻辑控制器(PLC)作为常用的现场控制设备,上位机作为数据采集及人机界面的一种已经得到广泛运用。过去,在工程项目开发中,PLC和上位机间的通信常采用RS-232C或者RS-485串行方式,这种要领很难满足数据量大、通信距离远、实时性要求高的控制系统。随着

WPF 上位机 Modbus 入门必备的信息 C# 开发对接

关于Modbus协议 Modbus协议是MODICON(莫迪康)(现施耐德品牌)在1979年开发的,是全球第一个真正用于现场的总线协议; Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,可以实现控制器相互之间、控制器经由网络和其实设备之间的通 信。 Modbus特点 协议标准 设备无关 -标准开放、公开发表、无版税要求、无许可证费(没有费用) -支持多种电气接口(RS232、RS4

IAP固件升级进阶(Qt上位机)

前言 时隔近一年,再次接触IAP固件升级,这次修改了以前的一些bug,同时新增一些实用性的功能。 有纰漏请指出,转载请说明。 学习交流请发邮件 1280253714@qq.com。 上位机界面 视频演示 当Up对iap固件升级的机制有了更深的理解后_哔哩哔哩_bilibili 固件升级指令 重要代码 1.通过拖拽实现文件读取 // MainWindo

BMS使用qt实现一个上位机,通信接口使用can

实现一个使用Qt作为上位机界面,通过CAN总线采集电压、电流、温度等信息的BMS(Battery Management System)监控系统,大致可以分为以下几个步骤: 1. 环境准备 安装Qt开发环境:确保你已经安装了Qt Creator及相应的Qt库。推荐使用Qt 5.x版本。安装CAN驱动和开发库:根据你的操作系统,可能需要安装如SocketCAN(Linux)、CANfestival

32岁TVB「最强关系户」快速上位,嫁巨星家族屡传婚变。

现年32岁的王敏奕贵为总经理曾志伟的新抱,经常被外界以「家嫂」称呼,而王敏奕近年亦凭出色演技获大赞,继在TVB剧集《婚后事》中饰演Mira一角,介入陈自瑶与罗子溢的婚姻,被封为「港版最美小三」之后,早前在剧集《家族荣耀之继承者》中大展「哭功」,获观众激赞! 除了演技备受赞赏之外,王敏奕的美貌亦获网民认同,向来保守的她日前激罕在IG大晒泳衣照,连龚慈恩都留言道:「咁正得唔得㗎。」

上位机图像处理和嵌入式模块部署(h750 mcu和图像处理)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         前面我们说过,h750和之前的103、407相比较,本身cpu频率比较高,flash大小一般,但是ram比较大,特别适合用来进行算法处理。其中,又以图像算法的处理更有实际意义。因为,如果mcu的频率不需要那么高的话,那么其实用407也完全可以实现我们的需求。那如何用市面上的

上位机图像处理和嵌入式模块部署(f407 mcu项目开发、产品开发)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         和做项目、产品相比较,做技术还是比较简单的。一般来说,所谓的技术,就是把相关的功能实现即可。但是做项目和产品的话,约束条件很多。比如说准备做一个产品,首先要知道,这是一个什么样的需求,有没有相关的竞品,成本必须控制在多少,有没有特色功能,通过什么渠道卖出去等等。技术实现只是

上位机图像处理和嵌入式模块部署(f407 mcu vs h750)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】         在目前工业控制上面,f103和f407是用的最多的两种stm32 mcu。前者频率低一点,功能少一点,一般用在低端的嵌入式设备上面;后者频率高一点,自带的ip多一点,一般用在工控、运控上面多一点。当然,现在随着技术的发展和需求的变化,h750系列的mcu用的也越来越多。在s

LabVIEW 用于 MES 系统和卡钳上位机检测

LabVIEW 确实可以用于制造执行系统(MES)的开发以及卡钳上位机检测。以下是详细说明: 使用 LabVIEW 开发 MES 系统 数据采集与处理:LabVIEW 擅长实时数据采集和处理,可以连接多种传感器和设备,获取生产线上的各种数据。数据分析与展示:通过丰富的图形化界面,LabVIEW 可以对采集的数据进行分析、展示,并生成报告。设备控制与集成:LabVIEW 能与 PLC、机器人等多