2022-08-02 22:08:43
引言:
勇哥想研究一下C#内嵌脚本的知识。
主要想把运动控制、视觉的一些功能封装成指令,用脚本语言进行调用。
就像机器人的vb语言,它就是把一些功能封装成指令进行调用。例如lua可以扩展nginx的功能,直接访问MySql数据库,达到1000k的访问量级别。另外,Lua也是可以扩展游戏的功能,即做游戏外挂。一、利用LuaInterface调用lua代码1、下载luainterface,这...
2022-08-02 21:53:52
引言:
勇哥想研究一下C#内嵌脚本的知识。
主要想把运动控制、视觉的一些功能封装成指令,用脚本语言进行调用。
就像机器人的vb语言,它就是把一些功能封装成指令进行调用。CodeDom 是啥东东?Html Dom听过吧,XML Dom听过吧。DOM一般可翻译为 文档对象模型,那 Code + DOM呢,自然是指代码文档模型了。如果你从来没接触过 CodeDom,你大概可以根据这个名字,推断...
2022-08-02 08:33:54
这个输出路径很多小伙都不知道怎么填写。其实很简单。你记住:先点“浏览” 看下当前的位置然后准备填写自己想要的相对路径串,其中: ..\ 是上一级 .\是下一级然后你判断是上一级还是下一级,然后添入路径串。例如勇哥输入的是 ..\..\dll\ 指的是当前位置的上一级的上一级的dll目录下面。输入完路径,按“浏览”,可以随时看到位置是不是你想要的位置,不是的话就改动路径串,重复这个过程...
2022-07-27 16:52:58
一直以为在路径表示中应该为\
实际上/也是可以的,勇哥还一直以为/的表示是halcon中专用的。
惭愧!!
moduleDir="ModuleObjectConfig\\LinearModule" 其实可以表示为
moduleDir="ModuleObjectConfig/LinearModule"
Directory.Exi...
2022-07-27 10:41:34
本篇给大家介绍神经网络的发展史。了解神经网络的发展史可以帮助我们更好的学习深度学习,
更清楚的把握深度学习的发展方向。
了解深度学习的历史,首先要了解深度学习的几个重要事件。
首先是1943年神经网络被提出,提出神经网络的是心理学家麦卡洛克和数学逻辑学家皮兹,
他们在论文神经活动中内在思想的逻辑演算中提出了神经网络模型,描述了一个基于神经网络的数学模型,
从此为神经网络打开了一个新时代。...
2022-07-15 13:51:20
伺服驱动器速度怎么计算呢?电子齿轮在伺服控制中设定是非常重要的,勇哥来解答一下: 伺服驱动器速度怎么计算1:速度=导程*(编码器分辨率/母/分子*脉冲速度) 2:导程:就是电机转动一圈物体的位移量 3:编码器分辩率:这一个是定死了的,就是电子齿轮1:1的时候转动一圈需要脉冲,也就是编码器会产生多少的脉冲 4:脉冲当量:你发一个脉冲物体会移动多少位置 它又等于 导程*(编码器分辨率/母/分子)电子...
2022-07-15 09:04:54
勇哥注:
做为一个上位机工程师,是不是经常求爷爷告奶奶找人焊轴的信号线?
而且你让别人焊什么,也得提出需求,电气那边多以焊plc用到的信号线为主,
对于运动板卡的一些需求是不明白的。
你得手把手告诉别人端口怎么接。
所以为了方便自己,还是扫下盲吧,充实下这方面的技能。雷塞DMC3000系列卡的25ping轴接口线缆引脚功能表:汇川sv660p,is620p的cn1端子引脚示意:手持端子,...
2022-07-12 10:28:56
勇哥注:
一直以来对电机的速度、距离的计算比较模糊。
感觉应该是机构选型的事,但实际上总被客户问到:“你们这轴跑多少mm/s?“
如果拿运动控制卡的运动参数来回答,”最大速度12万脉冲,加减速度0.1s“,客户会不知所云。
其实我也不知道自己说的是什么,因为这只是运动api的参数。
因此记录一下这方面的知识吧!伺服电机移动距离的计算某伺服电机编码器每转2500个脉冲,额定转速为3000r...
2022-07-03 22:04:16
开源的统计图控件中基本常用的是OpenFlashChar和ZedGraph,今天就先来讲讲ZedGraph的使用。ZedGraph资源ZedGraph来源:http://sourceforge.net/project/showfiles.php?group_id=114675ZedGraph相关例子资源:http://zedgraph.org/wiki/index.php?title=Sample...
2022-07-03 20:10:38
勇哥注:
设备的动作可以是plc,或者是运动控制来完成。
后者是一台工业电脑配上运动板卡来完成。
在有些工厂里,可能由客户喜好更喜欢用运动控制(比如富士康的苹果客户,
因为PC机和工厂的生产系统进行通讯要更方便一些,并且对视觉的配合要更好些)。
基于IPC和windows的运动控制,可靠性是没有plc好的。
因为plc相当于是一个专用小系统,并且是实时扫描的。可靠性是相当高。
但是P...
2022-07-02 21:12:28
勇哥注:
趁着需要测试运动回原的精度,加上本来需要编写netMarketing类库的应用教程,
那就顺手发一个制作视觉+运动测试框架的系列教程吧。
网上的netMarketing类库是1.3.0,这个版本需要使用halcon12.0
勇哥在演示的时候用的netMarketing版本比这个高,
这个版本还没有发布,使用的是halcon19.11。
所以下载文章源代码的朋友,注意halco...
2022-07-02 14:32:15
勇哥注:
趁着需要测试运动回原的精度,加上本来需要编写netMarketing类库的应用教程,
那就顺手发一个制作视觉+运动测试框架的系列教程吧。
网上的netMarketing类库是1.3.0,这个版本需要使用halcon12.0勇哥在演示的时候用
的netMarketing版本比这个高,
这个版本还没有发布,使用的是halcon19.11。
所以下载文章源代码的朋友,注意halco...
2022-07-01 23:09:46
勇哥注:
趁着需要测试运动回原的精度,加上本来需要编写netMarketing类库的应用教程,
那就顺手发一个制作视觉+运动测试框架的系列教程吧。
网上的netMarketing类库是1.3.0,这个版本需要使用halcon12.0
勇哥在演示的时候用的netMarketing版本比这个高,这个版本还没有发布,使用的是halcon19.11。
所以下载文章源代码的朋友,注意halcon版...
2022-06-30 19:54:25
勇哥注:
设备的动作可以是plc,或者是运动控制来完成。
后者是一台工业电脑配上运动板卡来完成。
在有些工厂里,可能由客户喜好更喜欢用运动控制(比如富士康的苹果客户,
因为PC机和工厂的生产系统进行通讯要更方便一些,并且对视觉的配合要更好些)。
基于IPC和windows的运动控制,可靠性是没有plc好的。
因为plc相当于是一个专用小系统,并且是实时扫描的。可靠性是相当高。
但是P...
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#中实现单例有很多种方法,本文将按顺序介绍非线程安全、完全懒汉式、线程安全和低/高性能集中版本。在所有的实...