- 博客(1057)
- 资源 (22)
- 收藏
- 关注
原创 倍福PLC:通过MC_WriteDriveOperationMode将伺服切换成力矩模式
因为伺服电动机也具备发出脉冲的功能,所以伺服电动机每旋转一个角度,都会发出对应数量的脉冲反馈,这样和伺服电动机接受的脉冲形成了呼应,这就是非标自动化设计中常说的闭环控制。伺服驱动器是与电动机配套的电控器件,可触发脉冲信号,伺服电动机接收到1个脉冲就会旋转1个对应的角度,从而实现角位移。如果上位控制器有比较好的闭环控制功能,用速度控制效果会好一些,就伺服驱动器响应速度来看,转矩模式运算量最小,控制器对控制信号的响应最快。5.根据结构特性,计算匀速扭矩,注意水平与竖直工况的计算区别。结合结构选择是否加减速机。
2023-03-12 15:39:21
508
1
原创 win10系统如何正确使用打印机扫描文件
导入完成后就会自动弹出“图片”的文件夹,这时候你已经完成了扫描工作,只要将文件打开预览即可,如果想要将文件转移直接“剪切ctrl+x”到自己想要放的文件夹即可。点击开始扫描,就会弹出一个扫描的画面框,根据自己的需求调整参数,一般不需要修改,直接默认点击下方“扫描”即可。扫描好后系统会自动弹出这个页面,如果没有特殊要求,直接默认点击“下一页”,然后到下一页点击“导入。找到自己电脑所连接的打印机,再点击打印机”右键单击”就会弹出一个栏目框,找到“开始扫描”后点击。通用打印机(本次演示的打印机是HP3636)
2023-03-03 15:40:37
810
原创 WPF开发--自带触控键盘的TeXTBOX实现
//通过该属性,访问Keyboard的文本。设置TextBox的Style为TouchTextBox,则该TextBox实现了自带触控键盘的效果。先实现一个自定义的KeyboardControl,它继承自Window。在App.Xaml中引入TouchTextBox.Xaml资源。添加一个名为TouchTextBox的资源字典。定义一个TouchTextBox的分部类。二 KeyboardControl。
2023-02-14 14:41:03
308
原创 wpf--通过Popup弹出自定义输入“键盘“的实现
在很多工厂的信息化MES系统中,车间的采集数据的机器是触摸屏电脑(工厂环境所限,用外接鼠标键盘反而不方便)。由于没有外接键盘,所以用户无法像坐在办公室一样,用鼠标键盘进行录入信息。/// NumericKeyboard.xaml 的交互逻辑。/// MainWindow.xaml 的交互逻辑。wpf之Popup弹出自定义输入"键盘"
2023-02-11 12:14:27
456
原创 WPF数据表DataTable添加ROW报错:This row already belongs to another table
想在DataTable2中插入DataTable1中的Row,但是提示报错:This row already belongs to another table.DataTable2.增加行(Row.ItemArray)DataTable2.增加行(Row)
2023-02-11 10:24:41
286
原创 C#--删除DataTable中的某一行
1,使用DataTable.Rows.Remove(DataRow),或者DataTable.Rows.RemoveAt(index);Delete()只是将相应列的状态标志为删除,还可以通过datatable.RejectChanges()回滚,使该行取消删除。3、在删除DataTable中的行的时候,每删除一行,DataTable中所有行的索引都会发生改变。Remove的使用是datatable.Rows.Remove(datatable.Rows[i]);而Remove方法则是直接删除.
2023-02-10 11:08:59
2047
原创 WPF--实现代码控制DataGrid的特定列排序
var temp=控件名.Items.Cast().Select(x => x as 类名).ToList();//界面字段排序后的集合。DataGridSort(“列绑定的字段名字”, ListSortDirection.Ascending);此方法适用于 WPF 的 DataGrid 控件。//按钮事件或者其它事件。3、获取排序后的结果集合。/// 模拟点击列头。/// 降序还是升序。
2023-02-09 16:48:32
455
原创 wpf小技巧——datagrid 滚动条问题
查了下微软文档http://msdn.microsoft.com/zh-cn/library/ms754213。所以如果想出现滚动条 就千万别在datagrid外面套stackpanel布局 切记切记~~~~~相信很多人都会出现这类情况 在datagrid外面套stackpanel布局吧。导致datagrid认为它的父容器在垂直方向无穷大 所以就没法出现滚动条了。运行就可以看到右边的 datagrid不会出现滚动条了。/// MainWindow.xaml 的交互逻辑。很简单的布局代码如下。
2023-02-09 15:05:17
733
原创 Wpf DataGrid的数据绑定
在项目开发的过程,通常会遇到一些表格数据的绑定,因为没有WPF的开发经验所以一边摸索一边开发,所幸WPF的上手难度不大,开发过程较为顺利。不过在使用DataGrid的时候还是遇到了一点阻绊遇。所以在这里讲一下这个DataGrid应该怎么用,以及要注意的事情。DataGrid是个非常实用的控件,可以用来展示及获取较为复杂的数据结构。1、在资源视图xml文件中添加DataGrid,并设置绑定,如下。在初始化代码中设置DataGrid绑定到的对象。
2023-02-09 13:14:04
1410
原创 WPF下给DataGrid自动增加序列号
C#下使用WPF框架编程时,有时需要给DataGrid添加序号,实现方式一般两种,一种方式是通过 LoadingRow,自动在列前边增加一列序号,该列为自动添加,没有列名字。另一种是自定义一列显示序号。下边我们看看具体的实现方式。最后设置DataGrid的 HeadersVisibility ="Column"或者 RowHeaderWidth =“0”。给DataGrid添加LoadingRow事件。给DataGrid添加LoadingRow事件。LoadingRow实现。LoadingRow实现。
2023-02-08 10:59:52
779
原创 WPF--DataGrid控件使用
DataGrid的使用其实跟TreeView类似,只不过后台组织的对象结构不同,DataGrid一般不需要递归结构,它绑定的数据源,一个属性就代表一个一列,理解不了没事,我直接上代码。(如果这是一直对最后一行进行双击后,再切换到其他行,会增加一行),直接设置CanUserAddRows=“False”,让它不能创建行。一个对象,对应一行,一个属性,对应一列,跟TreeView每一级对应一个对象类似的,默认的样式有点。三个属性,对应三列,老规矩,写界面和ViewModel(代码很简单,自己写咯)
2023-02-08 10:58:29
588
原创 倍福位置记忆--TwinCAT对绝对值编码器溢出圈数的处理--以汇川IS620N为例
因此在实际对于多圈绝对值编码器中,若未超出圈数,则可以基于编码器反馈脉冲直接计算,若是超出了圈数则需要进行溢出圈数的计算,该数值需要在PLC中进行断电保持。共32位:其中精度站23位,圈数占9位,所以是8388608。反应到NC的为:即低32位为编码器的当前反馈。最小:-2149498568。编码器位数:8388608。最大:2149498568。推出最大圈数为256。
2023-02-07 13:43:11
1137
原创 倍福EL6002实现RS232自由口通信,以称重模块RS232数据接收为例
RS-232是美国电子工业联盟制定的串行数据通信接口标准,原始编号全称是EIA-RS-232(简称RS232),它被广泛用于DCE(Data Communication Equipment ) 和 DTE(Data Terminal Equipment) 之间的连接。最早的台式电脑都会保留9针的232接口,用于串口通信,目前基本被USB接口取代。CTS是对请求发送RTS信号的响应,当DCE已经准备好接收数据时,该信号有效(ON),通知DTE可用使用TXD发送数据了。弄完了,再将CTS设置为1,让A发数据。
2023-02-06 10:45:03
467
原创 wpf中遍历界面控件的方法
摘要://////遍历界面中的所有控件//////privatevoidSetNotEditable(UIElementCollectionuiControls){foreach(UIElementelementinuiControls){if(elementisTextBox){(elementasT
2023-02-01 10:50:00
581
原创 在 WPF 中的两个窗口之间共享同一个对象
所以这是两个不同的对象.如果Settings 窗口中的对象AppSettings 发生更改,则更改不会反映在Main 窗口的AppSettings 中.>本文介绍了在 WPF 中的两个窗口之间共享同一个对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!现在要从不同的窗口引用此对象,您可以使用:((App)Application.Current).setting_1。我有代表我的 AppSettings 的类我有 Main 窗口和 Settings 窗口.
2023-01-31 14:32:31
374
原创 C#报错:未将对象设置到对象实例 Object reference not set to an instance of an object
这里要提醒大家的是,如果是从零开始获取的控件,一定要记得从最初始的路径开始获取,直接点说就是面板里最上面的控件。在Unity生命周期中,把实例化写在start()方法里面,而我又写的是用一个类去调用另一个类,而两个类中的变量都需要实例化,那么我在用A类去调用B类时,B类中的变量又可能还没有实例化,导致B类中的变量返回值为空。当Eval(“字段”)为Null时,一个Null.ToString(),必然也会出现上面的错误,那什么情况出现?当然啦,出现这种异常的场景,那可是万万千,数也数不完,但本质是一样的。
2023-01-30 17:25:06
3102
原创 WPF报错:The Solution of “The calling thread cannot access this object beacuse a different thread owns
传说中android的动画效果为什么没有iphone的动画效果好,就是因为iphone的绘制渲染的线程的优先级非常高,只要有关于动画的操作,比如说滑动一个菜单,那么这个动画会被安排到最优先级运行,从而保证动画的流畅。大概WPF中也是这样的理念。UI线程创建了那些在XAML或者在c#中定义的控件,并且拥有他们,并且出于对UI的保护,其他线程是不能访问到UI线程里的东西的,如果我们新建一个线程,然后在这个线程里面修改一个在xaml中或者在主线程中定义的Button.Content,那么就会得到这个异常。
2023-01-30 16:26:59
269
原创 WPF:Color.FromArgb(Byte, Byte, Byte, Byte)使用方法
该方法 FromRgb 对 alpha 通道使用默认值 255。颜色的 alpha 通道确定颜色的透明度。alpha 值为 255 表示颜色完全不透明,值为 0 表示颜色完全透明。Color.FromArgb(Byte, Byte, Byte, Byte) 方法。使用指定的 sRGB Alpha 通道和颜色通道值创建一个新的 Color 结构。新颜色的 Alpha 通道 A。具有指定值的 Color 结构。新颜色的红色通道 R。新颜色的绿色通道 G。新颜色的蓝色通道 B。
2023-01-30 15:23:57
339
原创 WPF:无法将类型 System.Drawing.Color 隐式转换为 System.Drawing.Brush
无法将类型 System.Drawing.Color 隐式转换为 System.Drawing.Brush 的解决办法。
2023-01-30 15:22:40
308
原创 WPF---入门教程Label使用
Label元素的Width和Height属性表示Label的宽度和高度。清单 2 中的代码片段设置了 Label 控件的背景、前景和对齐方式。Label的BorderBrush属性设置画笔来绘制Label的边框。Label控件的Content属性允许您将任何其他控件设置为Label控件的内容。标签的背景和前景属性设置标签的背景和前景色。创建一个Label控件并设置一个Label控件的名称、高度、宽度和内容。要将图像设置为标签的背景,我们可以将图像设置为标签的背景。以下代码片段将标签的背景设置为图像。
2023-01-30 15:14:11
576
原创 WPF入门教程--TabControl样式
但是,如果您希望超越这一点并直接影响选项卡的外观(包括形状和边框),则需要覆盖 TabItem 元素的控件模板,虽然这不像 WPF 的大多数其他区域那样直接,但它是还是可控的。WPF TabControl 允许您将界面分成不同的区域,每个区域都可以通过单击通常位于控件顶部的选项卡标题来访问。选项卡控件通常用于 Windows 应用程序,甚至在 Windows 自己的界面中,如文件/文件夹的属性对话框等。前两个允许选择控件上的上一个或下一个选项卡,而最后一个将显示有关当前选定选项卡的信息,如屏幕截图所示。
2023-01-29 13:56:00
856
原创 WPF绘制表格
WPF的Grid布局使用起来很方便,但如果我想绘制一个带有边线的表格则显得有点儿力不从心。虽然Grid有ShowGridLines这个bool类型的属性,但此属性设为true时显示的虚线而且不能改变颜色。使用Border的BorderThickness属性可以控制Border各边的显隐粗细(粗细为0就是不显示)。使用BorderBrush属性则可灵活控制每个单元格的边线颜色。那么,如何让Grid“作table状”呢?使用Border控件。
2023-01-18 12:04:38
276
原创 在C#的WPF程序使用XAML实现画线
使用X1、Y1两个属性可以设置直线的起点坐标,X2、Y2两个属性则可以设置直线的终点坐标。Stroke(笔触)属性的数据类型是Brush(花刷),凡是Brush的派生类均可用于给这个属性赋值。因为WPf提供了多种渐变色花刷,所以画直线也可以画出渐变效果。同时,Line的一些属性还帮助我们画出虚线以及控制线段终点的形状。[在这里插入图片描述](https://img-blog.csdnimg.cn/9f3a3f75a7bf464db5aa9c73d1e0cbf5.png)
2023-01-13 09:40:56
625
原创 我正在参加年度博客之星评选,请大家帮我投票打分,您的每一分都是对我的支持与鼓励。: http://t.csdn.cn/PgXPR
我正在参加年度博客之星评选,请大家帮我投票打分,您的每一分都是对我的支持与鼓励。
2023-01-04 14:29:29
238
3
原创 倍福--编码器链接到虚轴,虚轴不做控制,实轴做从轴,实现电子凸轮或电子齿轮的耦合
首先建立虚轴Master,再建立从轴Slave,再建立一个编码器轴Encoder:需要注意编码器轴的类型和虚轴类型不一样。这样主轴运动的位置会反馈到编码器轴。
2022-12-14 11:56:45
1011
原创 倍福--PLC通过功能块读取第三方伺服COE-Online参数,获取的温度、扭矩、驱动器报错代码
CoeSDO 通 讯 的 功 能 块 包 括 FB_EcCoeSdoRead , FB_EcCoeSdoWrite ,FB_EcCoeSdoReadEx , FB_EcCoeSdoWriteEx 等 , 属 于 库 文 件 TcEtherCAT.Lib。CoE 接口的驱动器,要在 PLC 程序中修改驱动器参数,可以使用 CoeSDO 通讯的方式。以FB_EcCoeSdoWriteEx 为例。本文介绍通过COE功能块添加第三方伺服的温度、扭矩、驱动器报错PDO。
2022-12-14 10:30:39
870
原创 倍福:汇川EtherCAT不同PDO参数组的选择配置
默认的Nc轴会自动连接一些关键的数据,如控制字、状态字、指令位置、指令速度、位置反馈、速度反馈这些。需要注意的是该勾选项必须是在伺服OP状态才能勾选,勾选完成之后需要激活配置,伺服重新上电。汇川EtherCAT伺服力矩输出值PDO配置,不同PDO参数组的选择。例如需要勾选力矩控制,并且限制力矩大小则,勾选1704的PDO列表项。而一般伺服的xml文件会配置好几组PDO参数,可根据实际情况勾选。有些其它的参数可以通过PLC变量连接获取,如下所示。则右边会有该选项的显示。
2022-12-09 15:48:24
1928
原创 倍福:通过FB_EcCoeSdoWrite功能块写入第三方伺服的COE参数
首先需要用到的功能块为FB_EcCoeSdoWrite,该参数是写入COE online中的数据。需要注意的是,如果在PDO参数中添加了,则PLC变量链接的优先级高于COE读写的优先级。需要注意的是地址不对会报错,但是没有专门复位功能,修改正确地址触发读取即可自动复位。确定所在主站的EtherCAT地址,注意不是控制器的netid,如下所示。即上述的变量,通过COE写入不会变化,需要在线修改或通过变量链接修改。填写完成之后,即可通过计时器的间隔触发COE参数的读取,如下所示。需要引入库文件,如下所示。
2022-12-09 15:31:46
536
原创 倍福:通过读取FB_EcCoESdoRead第三方伺服的COE参数,例如力矩等信息
本文介绍通过PLC读取第三方伺服的COE参数。例如力矩等信息然后再COEOnline中确定需要读取的变量的地址如下所示:确定所在主站的EtherCAT地址,注意不是控制器的netid,如下所示确定所在模块的从站地址,如下所示:需要引入库文件,如下所示根据上述的地址,确定参数,如下所示填写完成之后,即可通过计时器的间隔触发COE参数的读取,如下所示需要注意的是地址不对会报错,但是没有专门复位功能,修改正确地址触发读取即可自动复位读取另一个COE地址,在线修改即可没有子项的话不需要nSubInde
2022-12-09 14:15:06
618
原创 倍福:TwincAT配置汇川EtherCAT伺服,NC有数值变化,但电机不转,NC报错17744
默认是没有做变量链接,因此限制的力矩是0,此时伺服点动因为不能大于力矩限制,因此伺服电机不会动作。此时发的指令位置不断累积,大于跟随误差的设定值。汇川伺服配置之后,编码器数值有变化,电机不转,报错17744。解决方法:在PLC变量中声明力矩的限制值并写入,如下所示。原因:在勾选的PDO参数中,存在力矩限制的值,如下所示。
2022-12-09 09:12:59
923
原创 倍福PLC--C#实现ADS通信超时重传设定
ADS支持射频和系统设计工程师开发所有类型的RF设计,从简单到复杂,从离散的射频/微波模块到用于通信和航天/国防的集成MMIC,是当今国内各大学和研究所使用最多的微波/射频电路和通信系统仿真软件软件。软件迅速成为工业设计领域EDA软件的佼佼者,因其强大的功能、丰富的模板支持和高效准确的仿真能力(尤其在射频微波领域),而得到了广大IC设计工作者的支持。ADS是高频设计的工业领袖。它支持系统和射频设计师开发所有类型的射频设计,从简单到最复杂,从射频∕微波模块到用于通信和航空航天∕国防的MMIC。
2022-11-23 14:31:09
696
原创 htm与html的区别是什么
htm 是来源于老的 8.3 文件格式,DOS 操作系统只能支持长度为三位的后缀名,所以是 htm,但在 windows 下无所谓 HTM 与 HTML,html 是为长文件名的格式命名的。同时,这两种都是静态网页文件的扩展名,扩展名可以互相更换而不会引起错误(这是指打开而言,但是对于一个链接来说,如果它指向的是一个htm文件,而那个htm文件被更改为html文件,那么是找不到这个链接的)从一路风尘的笔记中,我们了解到 htm 是历史遗留的8.3字符限制命名方式,而现在我们在命名时并未遵守8.3规则。
2022-11-16 16:58:03
2582
1
原创 type=“text/javascript“表示什么意思
type=“text/javascript””通常与script标签配合使用,用于表示文本是属于javascript脚本;script标签的type属性用于设置脚本的MIME类型,将类型设置为javascript脚本语言用于脚本的执行。MIME 类型由两部分组成:媒介类型和子类型。对于 JavaScript,其 MIME 类型是 “text/javascript”。javascript是告诉浏览器里面的文本是属于javascript脚本。必需的 type 属性规定脚本的 MIME 类型。
2022-11-16 14:31:18
2697
原创 HTTP与HTTPS的区别
HTTPS(安全套接字层超文本传输协议(HTTP+SSL)):为了解决HTTP协议的这一缺陷,需要使用另一种协议:安全套接字层超文本传输协议HTTPS,为了数据传输的安全,HTTPS在HTTP的基础上加入了SSL协议,SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密。HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。4、http的连接很简单,是无状态的;另一种就是确认网站的真实性。
2022-11-16 12:21:04
138
原创 什么是 SSL 和 TLS 协议
该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。较低的层为 TLS 记录协议,位于某个可靠的传输协议(例如 TCP)上面,与具体的应用无关,所以,一般把TLS协议归为传输层安全协议。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。TLS握手协议是TLS协议中最复杂的部分。这个过程是在TLS记录协议的顶部执行的。
2022-11-16 11:28:12
216
原创 什么是 SSL 和 TLS 协议
该协议由两层组成: TLS 记录协议(TLS Record)和 TLS 握手协议(TLS Handshake)。较低的层为 TLS 记录协议,位于某个可靠的传输协议(例如 TCP)上面,与具体的应用无关,所以,一般把TLS协议归为传输层安全协议。SSL协议可分为两层: SSL记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本功能的支持。TLS握手协议是TLS协议中最复杂的部分。这个过程是在TLS记录协议的顶部执行的。
2022-11-16 11:26:48
783
原创 html前端跨域问题的解决方案
来,我们解释一下:首先通过第一个script脚本注册一个函数f,那么这个函数自然就存在了,后面使用的脚本也能用f这个函数,这个道理和你用script引入一个jquery然后后面用 $ 开始一通操作是一样的道理。但是但是前端这个时候注册了一个f函数呀,所以就会执行这个f(‘你好’),那么前端的数据也就请求回来了。首先是前端:使用ajax发送get请求,请求地址为http://127.0.0.1/api/get,由于前端页面使用file格式打开,所以在请求http协议的本机地址是会产生跨域问题。
2022-11-15 14:04:47
3918
原创 字和字节的区别
2、硬盘生产商是以GB(十进制,即10的3次方=1000,如1MB=1000KB)计算的,而电脑(操作系统)是以GiB(2进制,即2的10次方, 如1MiB=1024KiB)计算的,但是国内用户一般理解为1MiB=1M=1024 KB, 所以为了便于中文化的理解,翻译MiB为MB也是可以的。数据存储是以“字节”(Byte)为单位,数据传输大多是以“位”(bit,又名“比特”)为单位,一个位就代表一个0或1(即二进制),每8个位(bit,简写为b)组成一个字节(Byte,简写为B),是最小一级的信息单位。
2022-11-15 14:03:10
1314
倍福TwinCAT3电子凸轮例程
2022-05-12
倍福PLC频率发生器例程
2022-05-12
倍福PLC获取系统时间例程
2022-05-12
倍福PLC累计计时例程
2022-05-12
倍福PLC程序启动初始化例程
2022-05-12
倍福PLC产生秒脉冲例程
2022-05-12
倍福PLC求平均值算法
2022-05-12
倍福PLC模拟量计算例程
2022-05-12
倍福PLC例程--抽奖程序
2022-05-12
倍福PLC入门闪灯例程
2022-05-12
倍福PLC定时移位例程
2022-05-12
倍福PLC产生脉冲例程
2022-05-12
倍福PLC做RS232_485自由口通信案例
2022-05-12
倍福TwinCAT3编程软件
2022-05-12
倍福TwinCAT3入门教程
2022-05-12
倍福TwinCAT3运动控制教程
2022-05-12
倍福TwinCAT2运动控制教程
2022-05-12
TwinCAT2编程软件下载,用于倍福PLC的开发。
2022-05-12
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人