![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
上位机
StevenChen85
好好学习,好好工作,心平气和。
展开
-
工控双机协作流程(两台机器协作工作生产)(半导体行业)
最近做了两台超声波一体针焊接机已交货,为提高效率和与客户的流水线并线,所以两台机不能单独工作要协调工作。以发挥最大产能。因此做了这个双机协作通讯。相关技术1.Socket通讯2.ConcurrentQueue对列3.Task线程。原创 2023-12-31 20:48:54 · 1002 阅读 · 0 评论 -
c# TcP 开发
在这个例子中,服务器监听8000端口,并接受任何客户端的连接。客户端连接到本机的8000端口,并接收来自服务器的问候消息。以下是一个简单的TCP服务器和客户端示例。在C#中进行TCP开发,通常使用。原创 2024-07-24 17:07:05 · 291 阅读 · 0 评论 -
c# UDP 开发
确保在运行这些程序之前,UDP服务器正在监听相应的端口,否则发送方可能会抛出异常。此外,如果你需要处理并发连接或者是大量数据的传输,你可能需要使用异步方法或者调整超时设置等。实例,然后将消息编码并发送到指定的服务器IP地址和端口。接收方同样创建了一个。实例,监听指定的端口,并在有消息到达时接收和解码消息。在这个例子中,发送方创建了一个。在C#中使用UDP进行开发,你可以使用。原创 2024-07-24 11:07:45 · 207 阅读 · 0 评论 -
上位机读取不到相机图像问题排查
1.查代码,与相机有关的初始化,取图回调是否注册成功。2.查相机回调断是否有进来。没有进行检查相机官方软件是否可以打开。如果可以说明可能是电脑的防火墙打开了。关掉后测试。原创 2024-07-13 00:05:18 · 82 阅读 · 0 评论 -
海康视觉算法平台VisionMaster 4.3.0 C# 二次开发01 加载方案并获取结果
第一次使用海康视觉算法平台VisionMaster 4.3.0,项目中要使用这个平台进行视觉处理并获取结果。原创 2024-06-17 19:03:51 · 1280 阅读 · 0 评论 -
c#与汇川plc通信 使用官网API库
上位机开发中有时会要求与PLC进行通信,汇川官网也有好用的API库方便大家使用。记录一下开发过程。1.下载资料汇川技术 - 推进工业文明 共创美好生活打开后选择:服务与支持-》资料下载-》资料下载 这里可以直接搜索,或者按分类选择。按分类选择 下面左边有一个产品中心,这里有很多分类,我选择【工业自动化】在选择 【可编程逻辑控制器】再选择【中型PLC】再选择对应的产品点进去这里有资料列表,选择【软件与调试工具】最后选择【API库】下载。原创 2024-06-05 09:42:52 · 828 阅读 · 0 评论 -
c#与汇川plc通信
上位机开发中有时会要求与PLC进行通信。所以这里写了个简单的例子。在C#中与汇川PLC进行通信,你可以使用S7NetPlus库,这是一个开源的库,专门用于与西门子S7系列PLC进行通信,其中也包括汇川PLC。原创 2024-06-04 15:32:35 · 583 阅读 · 0 评论 -
wpf 实现长时间未操作自动退出登录
在WPF应用程序中实现长时间未操作自动退出,可以通过监听用户的鼠标和键盘事件来实现。方法来关闭应用程序。这里的计时器设置为10秒(10000毫秒),你可以根据需要调整超时时间。事件,并重置计时器。如果10秒内没有任何事件被触发,计时器会完成并调用。如果计时器到达设定的时间且没有其他操作事件触发,则关闭应用程序。在这个例子中,当用户的鼠标移动或按下键盘键时,会触发。当用户进行鼠标或键盘操作时,重置计时器。)中,设置一个计时器(如。原创 2024-05-27 14:36:36 · 337 阅读 · 2 评论 -
金南瓜EAP库使用开发
最近做了 一个半导体公司的上位机开发。厂商要求要支持EAP通讯。先了解一下EAP是什么吧?百度资料EAP( Equipment Automation Program)设备自动化处理,工厂实现设备自动化生产和管理。1. 机台状态数据收集,包括机台生产状态 空闲、生产、配置、出错等2. 机台活动数据的收集处理和追踪追溯3. 批次(Lot)校验、进站、出站、挂起4. 配方管理,包括ID校验、选择、上传和下载5. 警报管理,当机台发生故障时,记录出错信息,并通知相关人员进行处理。原创 2024-05-11 00:44:23 · 1129 阅读 · 0 评论 -
上位机开发 halcon坐标转轴坐标
上位机开发中有一种相机叫标定相机,主要是有来给某些要进行根据CAD图点位计算时当前产品实际点位坐标时使用的一种标定测量相机。主要原理是根据两个或多个指定的标定点进行取图计算圆心坐标,再将视觉计算出的圆心坐标和取图时的轴坐标进行偏差计算。最后得到标定点轴的真实坐标,再以这个基础去根据CAD图的理论坐标进行计算,最后得出CAD图点位在当前产的实现轴坐标。原创 2024-03-23 20:51:46 · 662 阅读 · 0 评论 -
C# 中多线程锁的使用经验
【对象锁】从名称中就可以知道,这锁的范围在对象中,不会影响到其他对象的的调用。原因就是对象里使用对【全局锁】每个对象在调用MoveAbs方法时都会进行排对,第一个线程用完后,第二个线程去用。如果在一个类里定义了这样一个锁,你在调用使用这个类的时候,是NEW了一个对象,并把这个对象给了一个静态全局变量中保存。但在用线程Task调用MoveAbs方法时你会发现,三个轴的运动情况是一个一个的移动。你在调用带锁的方法时会受到【全局锁】的影响。上面的代码中有一个【全局锁】和一个用了【全局锁】的方法。原创 2024-03-13 23:47:50 · 797 阅读 · 0 评论 -
雷赛控制卡获取轴当前位置的值不正确问题处理
如果雷赛软件中的【单轴参数】中的基本设置中的【脉冲模式】设置的是对的的话。那问题应该就是在伺服的编码器上了。要修改伺服的编码器的反馈方向就可以了。【输出脉冲相位】改成【1:A滞后B】,默认值是【0:A超前B】。从雷赛控制卡中获取当前轴位置值时发现轴在向零点的右边走时显示的值是负数。正常来就一般是要反馈正数的。一般轴零点右边是正方向,限位是正限位,反馈的位置也应该是正数。原创 2024-03-10 15:26:26 · 291 阅读 · 0 评论 -
雷赛控制卡轴走到正负限位后没有停止直接撞上硬限位后报警问题排查
雷赛控制卡轴走到正负限位后没有停止直接撞上硬限位后报警问题排查。这个问题的排查点有两个1.先确定在运动时数据的变化方向和运动的方向是否一至 如:软件上操作的运动的方向负方向指令位置的值就是慢慢变小。2.到出负限位时负限位信号灯是否正常亮了(变红)。3.以上两点都确定了后就说明软件的设置是正确的。如果还是会撞到硬限位上产生报警。很可能是伺服的参数设置错了。正负方向设置错了。本文查出来的问题就是伺服的正负方向参数设置错了。经电气工程师调整后测试OK原创 2024-03-09 10:07:14 · 328 阅读 · 0 评论 -
雷赛控制卡正负限位的信号灯不亮问题处理
如下图:3轴的IO映射都选3。1轴的IO映射都选1。正负限位IO映射:这个映射要和轴号对映。雷赛控制卡正负限位的信号灯不亮问题处理。回零设置中的IO映射也是一样的设置。原创 2024-03-08 20:13:20 · 279 阅读 · 0 评论 -
雷赛控制卡的扩展IO连接
因设备的上IO点较多,所以使用了多个雷赛32点位的IO扩展卡。上位机程序在控制输出IO时发现主模块IO和第一个扩展IO的输出可以控制。但第二个IO扩展卡和第三个IO扩展卡的输出控制不了。经排查出发现轴卡在初始化时只连接了第一个扩展IO卡。增加下面的代码连接上扩展IO就可以了。雷赛控制卡的扩展IO点无法控制问题处理。原创 2024-03-07 17:01:29 · 708 阅读 · 0 评论 -
c#将HImage对象保存成图片
图片对象HImage用C#代码保存到指定目录。c#将HImage对象保存成图片。原创 2024-03-01 10:15:42 · 530 阅读 · 0 评论 -
轴卡脉冲比意义
就是多少脉冲转一圈,然后它这个一圈儿正好又是1毫米,或者是零点儿五毫米这种这种换算的。这个2000是怎么来的吧,是根据这个伺服电机,它那个驱动器换算过来的。如上图就是2000个脉冲走1毫米。伺服电机的说明书有这些参数。原创 2024-02-29 16:54:45 · 267 阅读 · 0 评论 -
雷赛板卡的调试软件中轴报警清除
选择:单轴参数->伺服报警设置->有效电平->如果报警时显示的【高】就改成【低】,改完后点【下载】将参数应用到板卡上。再切回【单轴运动】看看报警有没有清除。原创 2024-02-29 16:14:03 · 553 阅读 · 0 评论 -
雷赛控制卡的扩展IO在雷赛软件里连不上是什么问题
雷赛控制卡的扩展IO在雷赛软件里连不上是什么问题。要拨码的,拨了码,记得断电。原创 2024-02-28 21:17:20 · 326 阅读 · 0 评论 -
用c# 自己封装的Modbus工具类库源码
Modbus通讯协议在工控行业的应用是很多的,并且也是上位机开发的基本技能之一。相关的类库也很多也很好用。所以就有了自己封装的Modbus工具类库的想法。C#是高级语言有很多好用的东西,如面像对像,设计模式等。如有多个串口设备就有多个代码类似的工具类。本次的封装用了一点面像对像的方法,设计了一个多个Modbus 基类将一些公共方法放在基类中,子类就可以继续使用。不同的子类有不同的功能。Modbus通讯协议我在工作中目前只用到了两种一个是串口通讯ModbusRTU,还有一个是网络通讯ModbusTcp。原创 2024-02-25 13:55:06 · 1466 阅读 · 5 评论 -
EPSON机器人与PC上位机软件C#网络TCP通讯
项目背景: 在非标设备PIN焊接机中用到了爱普生机器人。上位机软件使用c#wpf开发。主要逻辑在上位机中。用爱普生机器人给焊接平台实现自动上下料。通讯方式:网络TCP通讯,Socket角色:上位机为服务端,机器人为客户端。原创 2024-02-22 14:12:36 · 1285 阅读 · 3 评论 -
EPSON RC 机器人-第一个程序
有机械人且用USB线连接好。没有真机的选择 C4 Sample 可以运行程序。否刚会提示【不能连接到控制器,未安装USB驱动器】点 【是】,查看运行结果。原创 2024-01-31 00:06:09 · 578 阅读 · 0 评论 -
c# 海康照相机操作封装类(网口,USB)
在上位机开发中, 海康照相机的使用应该是很常见的,主要是网口通讯的相机用的多,有时也会用一些USB接口相机。以前项目都在赶时间做。没有时间去好好设计和封装。时间长了发现重复代码就很多,还有没有设计和封装的代码,代码份数和相机个数对等,说白了就是一个相机写一个相机类,基本都长一样,可能是就IP或相机名称不一样。最近有点空就来优化一下代码。这次优化完后可以直接用在以后的项目中。成熟代码没有BUG,减少重复开发,提高工作效率。原创 2024-01-26 22:31:55 · 1450 阅读 · 0 评论 -
Socket通讯使用的坑-消息合并发送-解决方法
【代码】Socket通讯使用的坑-消息合并发送-解决方法。原创 2024-01-11 00:17:24 · 641 阅读 · 0 评论 -
ITECH 艾德克斯 IT6722A 可编程电源
/[SOURce:]CURRent[:LEVel][:IMMediate][:AMPLitude] //该命令用来设定电源电流值。//DISPlay[:WINDow]:TEXT[:DTAT] , //该命令用于前面板显示屏上显示一条信息。//SYSTem:COMMunicate:SELect //该命令用来切换通讯接口。//[SOURce:]VOLTage[:LEVel][:IMMediate][:AMPLitude] 该命令用来设定电源电压值。原创 2024-01-06 19:08:53 · 1976 阅读 · 0 评论 -
Socket通讯使用的坑-消息合并发送
最近在做双焊接机的协同工作通讯时,发现不同方法发送的数据被Socket合并成一条消息发送出去了,这样在收时会报错了。两个方法发送的JSON数据内容是不一样的,由于两个发送时间的刚好是同一时间点触发,现像就是在客户端发现收到的数据是两个JSON对象的字符。这样在将字符串转成对像时就会报错了。原创 2024-01-06 17:20:59 · 575 阅读 · 0 评论 -
让相机的图片快速保存到工控机的小决招
设置网卡的巨型帧为最大。原创 2024-01-01 17:02:12 · 357 阅读 · 0 评论 -
解决 System.NotSupportedException:“该类型的 CollectionView 不支持从调度程序线程以外的线程对其 SourceCollection 进行的更改。”方法
用于封装消息和进度条值的 LoadModel 的loadmsg 属性的数据类型由LeoObservableCollection 改成了ObservableCollection,在界面上执行。3.2 方法2 只改LoadModel的loadmsg属性的数据类型为LeoObservableCollection。修改界面上代码,首先在 构造中增加DispatcherHelper.Initialize();SetLoadMsg 方法如下修改。具体看上面LoadModel的代码。原创 2023-12-01 23:28:14 · 982 阅读 · 1 评论 -
必能信焊接数据接口实现
由于我们的上位机要获取焊接结果数据,显示数据在图表上,并与产品码进行数据关系绑定。3. 获取最后焊接结果 GetWeldResult 参数 sid,根据文档说明可以知道这个接口每次请求只会获取最近一次焊接结果的数据。1. 登录 SystemLogin 参数 用户名 UserId,密码 Password,密钥 Key,请示成功后可以获取sid。从必能信工程师中获取服务接口文档,看完后发现要用到登录、登录注销 和获取最后焊接结果 三个接口。这个值很重要,后面两个接口都要用到这个值做为参数传入。原创 2023-11-16 15:20:50 · 58 阅读 · 1 评论 -
ZMotion 板卡程序不移动问题记录
界面上有一个【轴类型】的列要设置值,不能为0。【1-9】都可以,为0时点左,右按钮不会动的。原创 2023-09-12 15:46:57 · 46 阅读 · 1 评论 -
C#上位机开发步骤(流程)
这里要注意一点,计算机是很快的,但硬件的动作就没有计算机快了。3.2.1 主要有回零模式: 常用的有:一次回零+反找(到了限位再从反方向找0点),如果使用这种方式就一定要把 【回零中遇负限位是否反找】开关要打开。3.4.2 有效电平 的设置就要看电气工程师的线是怎么接的了。一般在没有报警的情况下,只要调整的选择后发现上面的报警灯灭了就可以了。扩展卡IO,扩展卡IO的操作和主卡操作函数是不一样的这个要注意。导入就是反过来,把导出的参数文件导入到板卡软件上,进行重新设置。以上就是轴卡的基本设置了。原创 2023-09-11 16:48:54 · 2601 阅读 · 0 评论 -
读取串口数据
上位机开发_读取串口数据原创 2023-09-10 18:48:48 · 91 阅读 · 1 评论