自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(49)
  • 资源 (20)
  • 收藏
  • 关注

原创 西门子【Automation Framework V1.2】AF架构

【代码】西门子【Automation Framework V1.2】AF架构。

2025-01-23 14:53:33 388

原创 西门子【Library of General Functions (LGF) for SIMATIC S7-1200 / S7-1500】

该库提供了一个轴函数块,该函数块具有非常丰富的功能,可用于简化轴的控制。”库包含用于生产数据、班次模型和诊断的有用且经过充分验证的功能。服务器,可以灵活、简单地同步系统和子系统,例如,获取系统。收您的应用软件,因为它可以基于通过测试的模块。分析DWORD类型的变量,并输出1-0序列的频率。分析DWORD类型的变量,并输出0-1序列的频率。计算DWord变量中上升沿下降沿的位的个数。计算DWord变量中1-0跳变的位的个数。计算DWord变量中0-1跳变的位的个数。包括用于实现安全应用的块,例如,通过。

2025-01-21 14:41:37 1654

原创 西门子【OMAC PackML V2022forS7-1200 / S7-1500】

依次读取当前单元状态并执行其逻辑,并在此循环中设置新的反馈信号,然后在新循环中再次评估这些反馈信号。处理状态和模式管理器以及状态和模式管理器本身的反馈、接口和后处理,这将在下一章中进一步讨论。然后,该接口与外部接口一起进行评估,例如来自HMI。评估命令并设置当前模式和状态,这些模式和状态通过“LUC_SetUnitStatus。的当前反馈和从自身模块生成的反馈以及安全状态。单元级别正在根据单元被分配到的安全区域处理安全评估和响应。的数据,即操作员执行的命令,或外部信号,例如FB。

2025-01-20 09:34:17 1042

原创 西门子【Library of Unit Control (LUC)单元控制库(LUC)】

西门子AF自发布以来备受各位电气工程师的青睐和关注,AF架构对工业控制系统给出了新的控制模式和程序架构,例如EM,CM的概念,这其中对单元控制、基本控制库,HMI接口,接口数据类型等做了标准化的规范定义,包括本地控制,远程OPC_UA控制、HMI控制等接口数据类型的定义和理解。为了更好的理解AF架构的基本构成本文对LUC单元控制库进行详细的说明,为后面AF架构的了解和学习做铺垫,AF架构对电气工程师提出了更高的要求。

2025-01-17 10:18:14 935

原创 西门子【Library of Basic Controls (LBC)基本控制库”(LBC) 提供基本控制功能】

指南进行标准化编程,LBC库的描述意图在于后期为"AF"架构做铺垫,LBC库的优点是对控制接口HMI接口以及报警代码,控制类数据类型,HMI数据类型等做了标准的规划和要求以便规范编程方法和思想和适配后面的AF架构。Prodiag的相关篇幅将不在赘述,有兴趣的可以自行到西门子官方网站进行学习。提供基本控制功能,这些控制功能根据西门子编程风格指南和““基本控制库”(LBC)

2025-01-16 15:56:34 1264

原创 [Codesys]常用功能块应用分享-BMOV功能块功能介绍及其使用实例说明

以后有时间会抽时间分享一些TIA和Codesys的常用功能块使用方法。

2024-11-12 22:25:31 1010 1

原创 【西门子官方车轨级S7-1500F安全PLC标准 SICAR架构应用实例】

西门子官方SICAR架构实际项目应用实例。SICAR架构可谓是车轨行业的天花板,但是运动控制上面稍微有点欠缺,需要后期自我开发。

2024-11-10 18:28:36 2808 2

原创 OPC UA开源库Open62541源码编译及Client客户端Server服务器端测试[一]

pen62541 是一款开源的嵌入式系统开发手册,旨在帮助开发者快速掌握 Open62541 的开发技能。本文将从 Open62541 的概述、功能、开发环境、编程接口和应用案例五个方面进行介绍。

2024-01-19 11:11:37 4501 5

原创 OPC UA 开源库编译方法及通过OPC UA连接西门S7-1200 PLC通信并进行数据交换

OPC UA全称为“开放性生产控制和统一架构”。简单来说,它是一种用于不同设备和系统之间进行通信的技术规范。通过OPC UA,各种设备和系统可以互相交流和共享数据,实现更高效的工业自动化。

2024-01-16 15:56:15 5932 4

原创 C++上位软件通过Snap7开源库访问西门子S7-200/LOGO PLC/合信M226ES PLC V存储区的方法

在前面例程中谈到了C++ 通过Snap7开源库S7通信库跟西门子S7-1200PLC/S7-1500PLC以及合信CTMC M226ES PLC/CPU226 PLC通信的方式方法和应用例程。但是遗憾的是Snap7中根据官方资料显示只能访问PLC的 DB区、MB区、C区、T区 、I区、Q区,并没有提到有关如何访问S7-200/S7-200SMART/MT226ES/CPU226等200系列PLC的方式和方法。

2024-01-10 15:35:20 4001 2

原创 MFC Socket和合信CTMC M266ES 运动控制型PLC通信进行数据交换

MFC Socket和合信CTMC M266ES 运动控制型PLC通信进行数据交换。

2024-01-08 15:45:49 1537

原创 C++上位软件通过LibModbus开源库和西门子S7-1200/S7-1500/S7-200 PLC进行ModbusTcp 和ModbusRTU 通信

C++上位软件通过LibModbus开源库和西门子S7-1200/S7-1500/S7-200 PLC进行ModbusTcp 和ModbusRTU 通信。

2024-01-03 18:46:13 5648 1

原创 C++上位软件通过Snap7开源库访问西门子S7-200/合信M226ES数据块的方法

上一篇文章中介绍了Snap7访问西门子S7-1200/S7-1500 DB块的方法,对于S7-200PLC是没有数据块访问的。S7-200PLC中Snap7只能通过访问MB块,VB块的方法进行和PLC之间的Snap7通信和数据交换。手头没有S7-200PLC故通过合信CTMC M226ES运动控制器进行测试,M226ES支持S7主站和从站协议。S7作为主站,S7-1200做为从站的通信也已经过测试。

2024-01-03 11:02:26 2948

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

Snap7是一款用于通信的PLC库,是一种轻量级的现代PLC通信库。Snap7可在多个平台上使用,包括Windows PC,Linux,Raspberry Pi和其他和基于C++的平台。该库是完全开源的,采用了MIT协议进行发布。Snap7库是用C语言编写的,提供了对S7-200,S7-300和S7-400 PLC系列的广泛支持,还可以连接到CPU,CP和OP通信适配器。

2024-01-02 17:37:42 8784 6

原创 C++ Vector容器使用方法详解

C++ 标准库向量类是序列容器的类模板。 向量以线性排列方式存储给定类型的元素,并允许快速随机访问任何元素。 向量是需要力求保证访问性能时的首选序列容器。vector是种容器,类似数组一样,但它的size可以动态改变。vector的元素在内存中连续排列,这一点跟数组一样。这意味着我们元素的索引将非常快,而且也可以通过指针的偏移来获取vector中的元素。

2023-06-29 14:07:33 1176

原创 MsgWaitForMultipleObjects和WaitForSingleObject的应用及其注意事项

MsgWaitForMultipleObjects()Waits until one or all of the specified objects are in the signaled state, an I/O completion routine or asynchronous procedure call (APC) is queued to the thread, or the time-out interval elapses. The array of objects can include

2023-02-16 15:22:06 1438

原创 VS2019 MFC Teechart V5.1曲线控件使用方法Teechart Activex V5.1控件绘图控件 动态绘图

VS2019通过MFC Typelib类向导添加Teechart相关类后会发生一些意想不到的错误,例如类型确实,文件缺失等错误。3. 右键 管理员身份 打开 ,此刻进入的是system32 (不是管理员打开cmd的话,用win + R的话,会提示模块已加载,但对DllRegisterServer的调用失败)。下面主要介绍动态添加曲线、改变曲线颜色、设置曲线外观、改变曲线类型、改变面板颜色、面板样式等相关的功能,导入导出功能。在添加类的头文件种增加如下语句,编译报错的都增加相关的重命名代码。

2022-12-28 09:53:48 4920 3

原创 VS2019 MFC CreateFontW 创建字体函数详细解读

CreateFont 函数创建具有指定特征的逻辑字体。 随后可将逻辑字体选为任何设备的字体。参数字体字符单元格或字符的高度(以逻辑单位为单位)。 字符高度值 (也称为 em 高度) 是字符单元格高度值减去内部前导值。 字体映射器按以下方式解释 nHeight 中指定的值。> 00< 0 对于所有高度比较,字体映射器查找不超过所请求大小的最大字体。首次使用字体时,会发生此映射。对于MM_TEXT映射模式,可以使用以下公式为具有指定点大小的字体指定高度:C++复制请求字体中字符的平

2022-12-07 19:58:57 2513

原创 VS2019 MFC 判断Windows当前操作系统是64位操作系统还是32位操作系统 Windows系统位数判断

VS2019 MFC 判断Windows当前操作系统是64位操作系统还是32位操作系统。

2022-12-07 15:05:29 737

原创 VS 2019 MFC Socket 通讯例程客户端Connect连接一对多同步通信TCP/IP通信客户端[二]

Socket进行初始化。必须包含自定义类头文件在应用程序中通过如下代码进行初始化。应用程序CPP文件源代码:最近很忙,程序写的较为匆忙,能正常运行,后期根据自己需要进行更改完善,文件发送的功能后期会陆续补上。

2022-11-09 19:28:19 2510 3

原创 VS 2019 MFC Socket 通讯例程服务器端Select一对多同步通信TCP/IP通信服务器端[一]

TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间协议,是一个工业标准的协议集,它是为广域网(WANs)设计的。3>原始套接字(SOCK_RAW):它提供一种能力,让我们直接跨越传输层,直接对IP层进行数据封装,通过该套接字,我们可以直接将数据封装成IP层能够认识的协议格式。1>流方套接字(SOCK_STREAM):它对应TCP协议,它提供面向连接的、可靠的数据传输服务,数据无差错、无重复的发送,且按发送顺序接收。

2022-11-07 20:56:27 3392 2

原创 VS2019 MFC MSComm 串口通信例程基于MSComm控件

Visual C++为我们提供了一种好用的ActiveX控件Microsoft Communications Control(即MSComm)来支持应用程序对串口的访问,在应用程序中插入MSComm控件后就可以较为方便地实现对通过计算机串口收发数据。 要使用ActiveX控件MSComm,程序员必须将其添加入工程。.........

2022-08-29 13:57:44 9231 6

原创 VS2019 DLL动态链接库生成多个正在运行的Windows应用之间共享的DLL [三]

本例程演示如何使用 Visual Studio IDE 通过 Microsoft C++ (MSVC) 编写自己的动态链接库 (DLL)。 然后,该演练演示如何从其他 C++ 应用中使用 DLL。 DLL(在基于 UNIX 的操作系统中也称为“共享库”)是最有用的 Windows 组件类型之一 。 可以将其用作共享代码和资源、缩小应用大小的一种方法。 DLL 甚至可使应用更易于维护和扩展。在本演练中,你将创建一个 DLL 并实现一些数学函数。 然后再创建一个控制台应用来使用 DLL 中的这些函数。 ..

2022-08-15 17:24:47 1462

原创 VS2019 MFC DLL共享动态链接库(MFC 常规库)封装例程非模态调用 MFC 常规库[二]

MFC DLL规则库,封装带有对话框的DLL

2022-08-12 15:14:07 2828

原创 VS2019 MFC DLL动态链接库(MFC 扩展库)封装例程 MFC 扩展库[一]

如上图所示为导出MFC DLL并导入到工程应用的实例,从实例看出导出的MFC DLL能正常使用,说明导出过程正确无误。C++的动态链接库封装是一个较为复杂的工程,本人也是通过应用了解到其中的冰山一角,希望能跟大家一起进一步升入学习和了解DLL的运行机制。.........

2022-08-10 16:01:48 3456

原创 VS 2019 MFC 通过代码关闭 重启Windows 系统的方法和源代码

LookupPrivilegeValue Function

2022-07-19 15:11:19 887

原创 VS2019 MFC Slider Control 控件继承CSliderCtrl类重绘 自绘

VS2019 MFC IP Slider Control 控件继承CSliderCtrl类重绘

2022-07-14 13:38:41 1005

原创 VS2019 MFC动态创建Slider Control控件 CSliderCtrl类成员函数Create应用创建Slider Control控件[MFC动态创建控件四]

CSliderCtrl::Create创建滑块控件,并将其附加到CSliderCtrl对象。

2022-07-14 08:42:31 1379

原创 VS2019 List Control 控件自绘例程继承CListCtrl类 OnNMCustomdraw重绘

VS2019 List Control 控件自绘例程继承CListCtrl类 OnNMCustomdraw

2022-07-13 09:41:40 1472

原创 VS 2019 MFC 通过ACE引擎连接并访问Access数据库类库封装

VS 2019 MFC 通过ACE引擎连接并访问Access数据库类库封装

2022-06-11 11:11:08 1477

原创 VS2019 MFC IP Address Control 控件继承CIPAddressCtrl类重绘

VS2019 MFC IP Address Control 控件继承CIPAddressCtrl类重绘

2022-06-11 10:29:45 345

原创 VS2019 MFC动态创建EDIT控件 ,CEDIT类成员函数Create应用创建EDIT Control控件[MFC动态创建控件三]

CEdit:: Create创建 Windows 编辑控件,并将其附加到CEdit对象。复制virtual BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID);参数dwStyle指定编辑控件的样式。 将编辑样式的任意组合应用于控件。rect指定编辑控件的大小和位置。 可以是CRect对象或RECT结构。pParentWn...

2022-05-31 08:09:27 3002

原创 VS2019 MFC动态创建ComboBox ,CComboBox类成员函数Create应用创建ComboBox控件[MFC 动态创建控件二]

CComboBox::Create创建组合框并将其附加到CComboBox对象。复制virtual BOOL Create( DWORD dwStyle, const RECT& rect, CWnd* pParentWnd, UINT nID);参数dwStyle指定组合框的样式。 将组合框样式的任意组合应用于该框。rect指向组合框的位置和大小。 可以是RECT结构或CRect对象。pParentWn...

2022-05-30 19:10:20 2255

原创 VS2019 MFC动态创建按钮和复选框,CButton类 Create成员函数应用创建复选框和按钮[MFC动态创建控件一]

MicrosoftWare微软官网说明:CButton::Create创建Windows按钮控件并将它附加到CButton对象。virtual BOOLCreate( LPCTSTRlpszCaption, DWORDdwStyle, constRECT&rect, CWnd*pParentWnd, UINTnID );参数 lpszCaption 指定按钮控件的文本。 dwStyle 指...

2022-05-30 08:21:41 2093

原创 VS2019 MFC Check-box Control 控件自绘继承Cbutton带图标

注意: 1>本例程用到了GDI绘图相关的库文件,因此要在项目.h文件内加导入GDI绘图库文件。如下图所示,本例项目解决方案.h文件为"DoublePathWayReflowerController.h"。 2>在"DoublePathWayReflowerController.h"头文件内导入GDI绘图库。#pragma once#ifndef UNLONG_PTR#define UNLONG_PTR unsigned long#incl...

2022-05-20 19:58:27 1271 1

原创 VS2019 MFC ComBOX控件自绘的方法和实例【一】

ComBox自绘效果图:继承类H头文件class CComboBoxXI : public CComboBox{ DECLARE_DYNAMIC(CComboBoxXI)public: CComboBoxXI(); virtual ~CComboBoxXI(); void SetImageList(CImageList* pImageList); CImageList* GetImageList() const; int GetItemImage(int nIndex..

2022-05-18 22:58:14 1082 1

原创 VS2019 MFC 工具栏增加ComBOX控件的方法和实例【一】

.h头文件定义变量和创建函数OnCreateToolBar()1>CComboBox m_TypeSelect;2>CToolBar m_DlgMainToolBar3>CImageList m_DlgToolBarIconList;//图标列表4>afx_msg void OnCreateToolBar();void CDoublePathWayReflowerControllerDlg::OnCr...

2022-05-17 10:04:26 1298

原创 VS 2019 MFC 右键弹出菜单栏简单例程

1》新建菜单栏。2》重载virtual BOOL PreTranslateMessage(MSG* pMsg);3》加载菜单栏。4》设置菜单栏显示位置。5》右键显示菜单栏。6》分离菜单栏。7》m_ALarmMsgListBox为CListBox绑定变量。BOOL CMFCApplicationJstReflowDlg::PreTranslateMessage(MSG* pMsg) { CWnd* m_tHwnd = AfxGetApp()->GetMa..

2022-04-30 15:41:36 1340

原创 VS2019 MFC ODBC 操作SQL SERVER 数据库

【注意】VS2019取消了之前老版本的SQL数据库向导。因此需要像VS2019以前版本一样操作数据库,就要单独写一个继承于CRecordset的类来完成向数据库添加数据、删除数据、更新数据、数据排序、数据过滤等操作。【继承类CDataBaseRec.h】#pragma once#include<afxdb.h>class CDataBaseRec : public CRecordset{public: CDataBaseRec(CDatabas...

2022-04-29 09:06:36 1711

原创 VS 2019 MFC CStatusBar 自绘制继承CStatusBar 类可改变每个Panel的字体颜色和背景颜色

MFC 状态栏自绘,状态栏字体颜色可以改变,状态栏中创建进度条。

2022-04-14 11:04:26 768 3

西门子S7通信开源库Snap7 64位编译库文件

Snap7访问西门子S7-1200/S7-1500 DB块的方法,对于S7-200PLC是没有数据块访问的。S7-200PLC中Snap7只能通过访问MB块,VB块的方法进行和PLC之间的Snap7通信和数据交换。手头没有S7-200PLC故通过合信CTMC M226ES运动控制器进行测试,M226ES支持S7主站和从站协议。S7作为主站,S7-1200做为从站的通信也已经过测试。

2024-03-01

Libmodbus-2.1.6编译完成库文件

1、进入到libmodbus\src\win32文件夹下, 2、双击configure.js文件进行编译,成功后会弹出编译完成窗口,点击关闭 3、然后在双击modbus-9.sln通过VS打开项目,打开项目完成后编译即可 4、编译完成后libmodbus\src\win32文件夹下就会出现modbus.dll和modbus.lib两个文件

2024-01-03

VS 2019 MFC Socket 通讯例程服务器端Select一对多同步通信TCP/IP通信服务器/客户端例程

VS 2019 MFC Socket 通讯例程服务器端Select一对多同步通信TCP/IP通信服务器/客户端例程

2022-12-28

VS2019 MFC MSComm串口通信源代码

 MSComm控件通信功能的实现,还是间接调用Windows API编程的结构。他提供了一系列标准通信命令的使用接口,利用它可以建立与串口的连接,并可以通过串口连接到其他设备,发出命令,交换数据以及见识和响应串行连接中发生的事故与错误。 目前,MSComm空间提供了“事件驱动”和“查询法”两种处理通讯问题的方法。 数据按驱动方式,是处理串行端口交互作用的一种非常有效的方法。在很多情况下,事件发生的时候要进行通知,这样我们就可以应用MSComm控件的OnComm()事件来捕获这些通信事件(当然啦,OnComm事件还可以检查和处理通信错误)。在实际的通信编程过程中,我们也正式在OnComm()事件处理函数中添加自己处理的代码,基于事件驱动-消息响应的方式可靠性极高!         查询方式,实质上还是事件驱动,在某些情况下该种方式可能更便捷。在程序的每个关键功能之后可以通过检查CommEvent属性值来查询事件和错误。

2022-08-29

VS2019 MFC DLL共享动态链接库(MFC 常规库)封装例程非模态调用例程。(里面包含MFC 扩展库何规则库两个例程)

MFC DLL规则库封装例程及其调用方法,包含静态调用和动态调用。

2022-08-15

MFC 扩展DLL封装例程

准备把自绘控件单独封装到DLL类中,尝试使用“使用共享MFC DLL的规则DLL”建立项目,总是无法找到.lib,最终发现应该使用“MFC扩展DLL”类型建立DLL项目。 自带的基本控件都不怎么美观,所以一般开发者都会自定义类对控件进行重绘。手里也积累了不少控件的重绘,对对话框、静态文本、列表框等。 但是每次都要把这些类重新导入到新的工程里,比较麻烦,而且我也不想公开我积累的这些代码,所以想到了封装成库文件,每次只要导入头文件和库就行了,这样别人也看不到内部实现。

2022-08-10

VS2019 MFC List Control控件自应用例程

VS2019 MFC List Control控件自应用例程

2022-06-13

VS2019MFC 控件自绘大全(按钮/复选框/单选框/菜单栏/静态文本/等控件自绘继承类)

本例程主要包含MFC较为常用的一些控件的自绘继承类,自绘全都为自定义类,直接调用即可。都是些较为简单的自绘,可供初学者学习。

2022-05-19

VS2019 MFC 操作系统注册表

VS2019 MFC 操作系统注册表包括读取写入二进制、读取写入字符串、读取写入数值、删除注册表键值、删除注册表子相等功能

2022-04-30

VS2019 Edit Control 重绘带软件键盘输入MFCApplicationKeyBoardNumPad.rar

1、Edit控件重绘。 2、带软键盘输入。 3、透明软键盘窗体。 4、软键盘按钮重绘,键盘按钮颜色可变。 5、Edit编辑框获得焦点和失去焦点背景颜色和字体颜色可变。

2022-01-22

VS2019 MFC类库CrectTracker类重写MFCApplicationCRectTracker.rar

VS2019 MFC类库CrectTracker类重写

2022-01-07

VS2019 GDI CBrush 例程MFCApplicationGDICBrushDemo.rar

VS2019 GDI CBrush 例程

2022-01-06

VS2019 Cpen例程MFCApplicationGDICpenDemo.rar

VS2019 Cpen例程,都是一些很简单的例程。对初学者很有帮助,一起学习VS2019

2022-01-06

VS2019字体和文本输出例程MFCApplicationTextMetricsDemo.rar

VS2019字体和文本输出例程

2022-01-06

VS2019 编辑框例程MFCApplicationl_Testone.rar

VS2019 编辑框例程

2022-01-06

VS2019 向导属性对话框例程MFCApplicationWizardPropertyPageTest.rar

VS2019 向导属性对话框例程

2022-01-05

VS2019 TreeControl例程MFCApplicationTreeControl.rar

VS2019 TreeControl例程

2022-01-05

VS2019 Timer定时器例程MFCApplicationTimerDemTest.rar

VS2019 Timer定时器例程

2022-01-05

VS2019 动态加载图片例程MFCApplicationPictureControlDynamicLoad.rar

VS2019 动态加载图片例程

2022-01-05

VS2019 PictureControl控件例程MFCApplicationPictureControl.rar

VS2019 PictureControl控件例程

2022-01-05

西门子S7-1200PLC USS/V20/PID/位置控制综合程序StartAndStopMotor.rar

西门子S7-1200PLC USS/V20/PID/位置控制综合程序。PID带简单滤波程序。V20采用ModbusTCP协议控制。内有伺服点动,等控制程序。

2022-01-05

VS2019 CSplitterWnd例程MFCApplicationCSplitterWndDemo.rar

VS2019 CSplitterWnd例程

2022-01-05

VS2019CFontDialog对话框类例程MFCApplicationCFontDialogDemo.rar

VS2019CFontDialog对话框类例程

2022-01-04

VS2019CFileDialog对话框类例程MFCApplicationCFileDialogDemo.rar

VS2019CFileDialog对话框类例程

2022-01-04

VS2019 CTime、CTimeSpan例程ConsoleApplicationCTimeAndCTimeSpan.rar

VS2019 CTime、CTimeSpan例程

2022-01-04

vs2019 自动控件大小自适应类ResizeDlg.rar

vs2019 自动控件大小自适应类ResizeDlg.rar

2022-01-03

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除