2022-06-29 22:24:54
勇哥注:
设备的动作可以是plc,或者是运动控制来完成。
后者是一台工业电脑配上运动板卡来完成。
在有些工厂里,可能由客户喜好更喜欢用运动控制(比如富士康的苹果客户,
因为PC机和工厂的生产系统进行通讯要更方便一些,并且对视觉的配合要更好些)。
基于IPC和windows的运动控制,可靠性是没有plc好的。
因为plc相当于是一个专用小系统,并且是实时扫描的。可靠性是相当高。
但是P...
2022-06-28 22:20:19
勇哥注:
设备的动作可以是plc,或者是运动控制来完成。
后者是一台工业电脑配上运动板卡来完成。
在有些工厂里,可能由客户喜好更喜欢用运动控制(比如富士康的苹果客户,
因为PC机和工厂的生产系统进行通讯要更方便一些,并且对视觉的配合要更好些)。
基于IPC和windows的运动控制,可靠性是没有plc好的。
因为plc相当于是一个专用小系统,并且是实时扫描的。可靠性是相当高。
但是P...
2022-06-28 11:10:05
上一篇文章我们讲解了编码器(encoder)的工作原理,并且对增量型编码器进行了详细介绍。今天这篇文章我们来讨论下编码器的另一种类型:绝对编码器(absolute encoder)。顾名思义,绝对编码器是能输出绝对值的一种编码器。我们知道,编码器的组成包括:连接轴,码盘,光源和输出电路等,绝对编码器的码盘与相对编码器有很大的不同,请看下图:左边是绝对编码器的码盘,右边是增量型编码器的码盘。可以看出...
2022-06-28 10:56:41
(一)伺服驱动器适配电机编码器SV660P匹配绝对值编码器时,需要设置电机编号 H00-00=14101,根据实际应用情况设置 H02-01。初次接通电池时会发生Er.731(编码器电池故障),需要设置H0D-20=1 复位编码器故障,再进行原点复归操作。电机铭牌上可以看到电机的编码器信息。绝对值相关的设置如下:(1) 23位编码器1. 首先设置H0000=14101,设置完成后断电重启生效2....
2022-06-27 21:13:21
勇哥注:
设备的动作可以是plc,或者是运动控制来完成。
后者是一台工业电脑配上运动板卡来完成。
在有些工厂里,可能由客户喜好更喜欢用运动控制(比如富士康的苹果客户,
因为PC机和工厂的生产系统进行通讯要更方便一些,并且对视觉的配合要更好些)。
基于IPC和windows的运动控制,可靠性是没有plc好的。
因为plc相当于是一个专用小系统,并且是实时扫描的。可靠性是相当高。
但是P...
2022-06-27 16:26:29
勇哥的C#项目,当把项目卸载后,再次载入。有些显示“不可用”,有些显示“不兼容”。但是所有的都能重新载入。这是什么鬼?有人知道吗?我之所以卸载项目,是因为dll开发完成,不需要再挂载源代码了。...
2022-06-25 23:06:35
通用的欧姆龙plc rs232通讯类 OmronPlc的应用欧姆龙PLC的 Host Link Fins通讯协议是一种帧通讯协议,它可以批量读取或者写入数据到PLC内存区,支持DM, A, W, T, CIO, H 等内存区,并且可以读了字或者位。另外,HostLink协议只支持读取监视模式下的数据,而Host Link Fins协议无论在监视还是运行模式下都是可以读写的。对于hostlink F...
2022-06-25 17:40:21
ListviewEx, 和listViewHelper前者是控件,后者是它的帮助类。通过帮助类,可以非常 简单的操作dataGridView控件或者本文讲的dataGridViewEx控件。代码中的初始化,意义如下:添加或者删除数据,仅仅是操作listViewHelper类内部维护的内存表set.appendRowData(dgvHlper.DgvDataTableName, obj);导出数据也...
2022-06-25 17:05:51
扩展ListviewEx, 和listViewHelper帮助类此控件使用简单,如果只要显示数据则配合listViewHelper类的两个方法 来使用就可以了: //初始化字段名与显示宽度
view.setFields(new string[] { "id","name"},
new int[] {50,200 });...
2022-06-24 20:49:51
应用程序容器, 信号灯, 圆形多彩按钮,IO输入组合控件, IO灯它们对应工具箱的控件如下:AppContainer 是第三方应用程序容器 用于把第三方程序显示嵌入进来CircularButton 圆形多彩按钮Infobox 信息框 可以用来显示设备状态或者log信息Signal 圆形或者方形信号灯 可以做信号灯,做为组态显示用,例如组合出红绿灯SignalButto...
2022-06-24 08:23:20
公司汇川伺服大量使用中,这里记录一下其常用参数设定。本贴记录SV660P型号的。SV系列的型号定义:硬件说明:驱动器的规格这里勇哥摘一些我们感兴趣的部分位置控制模式,对于P系列应该就是脉冲控制了。速度转矩控制模式是啥,暂时不知道输入输出信号中,有许多可玩的。有许多在雷塞运动卡中耳熟能详的项目:伺服准备好、位置到达等等。但绝大部分都没用过,公司目前连伺服使能都接成上电即使能了。常用参数设定H05-0...
2022-06-23 22:39:33
多彩按钮,扩展listbox,扩展TextBox 分别是下面几个控件。
uTextBox通常在项目中做设备状态输出,可以指定文字颜色和字体。
listboxEx可以指定项目文本的图标
ColorFulButton可以设置按钮渐变色。
运...
2022-06-23 14:48:32
Application.DoEvents()以让UI线程在当前代码上下文中切换去处理其它Windows消息,从而避免界面的假死。如在一个按钮单击事件中,需要每一秒改变label的Text属性,如下代码: private void button1_Click(object sender, EventArgs e)
{
for (int i = 0; i &...
2022-06-16 14:59:51
引言:
勇哥目前需要在两个进程间进行线程同步,要求是这样的:
进程A负责扫描板卡IO,并将结果写入共享内存。
进程B负责读取共享内存的结果。
这个时候需要在进程A写入IO扫描结果后立刻通知进程B读取结果。进程A的写入动作节拍是4ms,
进程A和进程B必须在在这4ms节拍内按先后次序完成数据的写入与读取。
这是由于io扫描的结果除了io的电平状态,还包括上升沿和下降沿的结果,
如果...
2022-06-16 10:26:49
引言:
勇哥目前需要在两个进程间进行线程同步,要求是这样的:
进程A负责扫描板卡IO,并将结果写入共享内存。
进程B负责读取共享内存的结果。
这个时候需要在进程A写入IO扫描结果后立刻通知进程B读取结果。进程A的写入动作节拍是4ms,
进程A和进程B必须在在这4ms节拍内按先后次序完成数据的写入与读取。
这是由于io扫描的结果除了io的电平状态,还包括上升沿和下降沿的结果,
如果...
2022-06-10 15:56:50
单例模式是软件工程学中最富盛名的设计模式之一。从本质上看,单例模式只允许被其自身实例化一次,且向外部提供了一个访问该实例的接口。通常来说,单例对象进行实例化时一般不带参数,因为如果不同的实例化请求传递的参数不同的话会导致问题的产生。(若多个请求都是传递的同样的参数的话,工厂模式更应该被考虑)C#中实现单例有很多种方法,本文将按顺序介绍非线程安全、完全懒汉式、线程安全和低/高性能集中版本。在所有的实...
2022-06-03 08:14:58
引言:这个问题勇哥也是很疑惑,直到看到下面这篇文章....写得真是好。。。它让我感叹,政治真是它妈的这人世间最凶猛的学问。另一方面来讲,它也可以堪称为职场教科书。...
2022-05-30 22:37:44
购买了netMarketing类库源码的朋友,可以会遇到无法编译的情况。这里说明一下。首先,源码收到后项目为四个。demo不是必须的,只是用来测试类库用的。下面是整个项工程的配置属性下面是四个项目的依赖项接下来是单个项目的编译平台目标下面是demo接下来的netMarketing, shareClass, userUI 这三个,都是Any CPU最后,请注意这个类库要求C# 2017, halc...
2022-05-29 23:04:30
项目结构是这样的但是重新编译的时候报下面的错误:检查了各个类的依赖关系,以及出现感叹号的失效引用项目。还是不行。真是非常的奇怪。后回忆起添加了一个项目CMemeShare到ShareClass类中去。因为之前是个项目,所以有自己 的bin, property等目录,将其删除,重新编译就好了。--------------------- 作者:hackpig来源:www.skcircle.com版权声...
2022-05-23 15:58:31
Z相是零位信号,编码器旋转一周输出一个脉冲,一般在机械回零时应用。如何编程要看你的回零方式。在高精度回原的时候,必须要考虑Z相信号回原点的原理基本上常见的有以下几种。
一、伺服电机寻找原点时,当碰到原点开关时,马上减速停止,以此点为原点。
这种回原点方法无论是选择机械式的接近开关,还是光感应开关,
回原的精度都不高,受温度、噪音、粉尘、电源波动等等的影响,信号的反应时间会每次有差别,...
2022-04-11 11:11:39
引言:勇哥手里的运控软件对实时性有了新要求。因为同设备上运行的其它视觉软件对cpu时间有变态的占用,压缩了运控软件的cpu占用时间。我们知道如果视觉软件卡一下,最多是处理时间长一点,但是运控软件卡一下,那就意味着撞机的问题,这个要严重得多。这个问题会持续把研究结果更新到本贴子。(一)提升线程和进程的优先级别ProcessPriorityClass等级说明public enum ProcessPri...
2022-04-06 20:13:33
云梦泽的这首曲子叫无梦之泽,没有缙云,不再有关于他的梦,也许因为那种胸腔中茫然空洞让她不再想象有关于缙云的梦。 古剑奇谭3的对白是相当的文学化,配音堪称完美。游戏场景建模精美,非常难得的是没任何一处偷工减料。勇哥印象很深的是在游戏尾声有处场景“鹿溪”,此处作用只有两次,第一次见到姬轩辕时、最后一次为他送行。按剧情来讲,此两段剧情完全可以放在赤水场景,但是游戏团队还是一丝不苟做出精美的”鹿溪“...
2022-04-06 08:08:22
勇哥说一下解决C#下控件闪烁的几个问题,如下: listview和datagridview显示数据闪烁 自定义控件的显示闪烁listbox滚动条拖动闪烁面板中控件过多的闪烁propertyGrid点击和修改项目缓慢的问题richtextbox控件的刷新显示问题此类问题对于界面复杂规模比较大的程序感觉更明显。另外勇哥的经验是你需要把程序拿到一个古董级别电脑上去复现上述问题及判断解决方案是否有效果。...
2022-04-05 22:25:33
C#的propertygrid控件是很强。可以实现类似Vitual Studio属性面板那样的效果。但是。。。。勇哥一直痛苦它在选择和修改项目的时候很慢。我的用法是使用控件的SelectObject来绑定数据。 PgridMotionSpeed.SelectedObject = null;
PgridMotionSpeed.SelectedObject = InterSpeedConfigDa...
2022-04-03 11:29:53
今天突然想用多台电脑递归远程,是个什么效果呢?勇哥用电脑A先远程登陆电脑B,然后用电脑B远程登陆电脑C。各位能猜出来是个什么结果吗?做为程序员的直觉,这种情况下,下图所示的登陆提示条可能会出现问题。当你用电脑B再登陆一个mstsc远程后,你会发现你只能看到电脑C的远程桌面,再无法退回电脑B的远程桌面了。因为这个登陆提示条无法选择登陆窗口。这个后果就是,你现在只能看到电脑C的远程桌面了,即使你退出远...
2022-04-03 11:17:23
Win10远程桌面,连接上后能进桌面,但立刻弹出一个对话框,说什么“已经被断开,其它用户正在使用....“确认后就自动断开。网上全部是都误人的转载贴。勇哥经过实验,发现只不过被远程的电脑上的账户没有设置密码的原因。这一点有点奇怪。我清楚记得下面的组策略,把”空白密码...“这项置为禁用的话。对方账户不要密码也可以远程的,而且我清楚记得win10也可以的。现在为啥子远程失灵了?只有一种可能,是系统自...
2022-03-12 19:42:12
勇哥手里这块DMC1000S的卡,按手册安装后,在电脑硬件管理列表中只有一个驱动LeisaiDrvr1230,而没有DMC1000S。如果手工强制安装DMC1000s还会出现“哈希xxxx信息不正确,包损坏“这样的信息。怀疑驱动包损坏,让雷塞的人再传一份驱动程序安装,也一样。接着怀疑是不是此款卡不支持win10系统,咨询得知是支持的。那么究竟是什么问题呢?原因是在第一次安装的时候,下图这里这个勾被...
2022-03-12 19:40:16
作者进行多日整理完成此文《Micro LED的巨量转移技术综述》,堪称平台单一技术分析的一大"巨著"。Fancy在汇整此文的过程中,收获颇多,受益匪浅,也望同样能给广大作者阅读收获。该综述分为上中下三篇:上篇讲述巨量转移技术概述及范德华力派;中篇讲述巨量转移技术静电力派及磁力派;下篇讲述巨量转移技术激光转印派,流体自组装派和卷对卷转印派。在此致敬本文专栏作者 光同尘引言2000...
2021-10-17 09:27:15
请看演示程序。我们知道List.Find() 如果找到则返回这个对象,找不到返回这个类型的缺省值。下面例子中,你无法这样写: if(res1==null) { }因为结构体的缺少值不是null。演示程序:using System;
using System.Collections.Generic;
using System.Li...
2021-10-03 22:26:15
勇哥注:《多线程安全》这个系列会持续写下去,它是我的一个弱点,有兴趣的朋友可以选择性看看。内核模式锁有三种:事件锁AutoResetEvent,MuanualResetEventm,信号量Semaphore,互斥锁Mutex这三种锁,我们发现都有一个WaitOne方法。。。因为他们都是继承于WaitHandle。三种锁都是同根生,其实底层都是通过SafeWaitHandle来对win32api的一...