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做为从站的通信也已经过测试。

M226ES简介

40点总线运动控制型CPU,支持16个EtherCAT总线轴,支持8/10路*200KH运控输出,24DI/16DO晶体管漏型输出,200KB+48KB+48KB程序空间/64KB数据空间,24VDC电源,2个PP和自由通讯口可切换,1个EtherNET通讯口1个EtherCAT总线通讯口(可配置成EtherNET),支持CAN、RS485和模拟量扩展板;支持Profinet智能从站;支持网口在线升级固件;支持C语言编程;支持Trace追踪功能;支持单轴运控(如定位、速度和回原等)功能;支持多轴多路直线/圆弧插补、连续插补、电子齿轮、电子凸轮和追飞剪功能;支持PLCopen标准指令库。

| 规格项目 | CPU M226EM | ||||||||||||||
| 综合特性 | |||||||||||||||
| 尺寸(宽×高×深) | 196×80×62 mm | ||||||||||||||
| 功耗 | 20W | ||||||||||||||
| 程序存储器 | 200KB+48KB+48KB | ||||||||||||||
| 数据存储器 | 64KB,永久保存 | ||||||||||||||
| 最大扩展模块数 | 7 | ||||||||||||||
| 最大数字量 | 128DI/128DO(扩展can扩展板最多640DI/640DO) | ||||||||||||||
| 最大模拟量 | 32AI/32AQ(扩展can扩展板最多194AI/194AQ) | ||||||||||||||
| 数据保存 | FlashROM(永久保存) | ||||||||||||||
| 电源特性 | |||||||||||||||
| 额定输入电压 | DC24V | ||||||||||||||
| 冲击电流 | 28.8VDC时12A | ||||||||||||||
| 隔离(现场与逻辑) | 无 | ||||||||||||||
| 保持时间(掉电) | 10ms以上 | ||||||||||||||
| +5V电源输出 | 扩展总线 | 1A | |||||||||||||
| BD扩展板总线 | 200mA(有开关控制) | ||||||||||||||
| 通信 | 10mA 100R电阻 | ||||||||||||||
| 传感器+24V电源输出 | 电压范围:20.4~28.8VDC | ||||||||||||||
| 额定电流:300mA | |||||||||||||||
| 纹波噪声:跟输入电源相关 | |||||||||||||||
| 隔离(传感器与逻辑):不隔离 | |||||||||||||||
| 电源告警 | 电源不足15V告警,报警位SM195.1 | ||||||||||||||
| 常规特性 | |||||||||||||||
| 定时器总数 | 2048 | ||||||||||||||
| 1ms | 36 | ||||||||||||||
| 10ms | 752 | ||||||||||||||
| 100ms | 1260 | ||||||||||||||
| 计数器 | 2048个 | ||||||||||||||
| 累加器 | 4个 | ||||||||||||||
| 内存存贮器位 | 8192位 | ||||||||||||||
| 内存存储位掉电保持时间 | 永久保持 | ||||||||||||||
| 局部存储区(L) | 64字节独立 | ||||||||||||||
| 顺序控制继电器(S) | 8192位 | ||||||||||||||
| 时间中断 | 2个1ms分辨率 | ||||||||||||||
| 边沿中断 | 10个上升沿和/或10个下降沿(I0.0,I0.7,I1.0,I1.1) | ||||||||||||||
| 布尔量运算执行时间 | ≤1.5µs | ||||||||||||||
| 浮点运算执行时间 | ≤6.2µs | ||||||||||||||
| 实时时钟 | 内置 | ||||||||||||||
| BD扩展板接口数 | 1个,支持RS485扩展板、CAN扩展板、模拟量扩展板 | ||||||||||||||
| 系统指示灯 | SF指示灯(红色) | ON:系统错误,OFF:正常 | |||||||||||||
| DIAG指示灯(橙色) | ON:程序控制,OFF:正常 | ||||||||||||||
| RUN指示灯(绿色) | ON:运行,OFF:停止 | ||||||||||||||
| STOP指示灯(橙色) | ON:停止,OFF:运行 | ||||||||||||||
| RMC指示灯(绿色) | ON:远程控制连接,OFF:远程控制断开 | ||||||||||||||
| LNK/ACT指示(绿色) | ON:以太网连接,闪烁:传输,OFF:断开 | ||||||||||||||
| 运行开关 | RUN/STOP | ||||||||||||||
| 外接电池接口 | 支持,电源不足2.0V,报警位SM195.0 | ||||||||||||||
| 编程卡 | 支持 | ||||||||||||||
| 存储卡 | 支持TF卡(预留) | ||||||||||||||
| 高级功能 | ⽀持Trace追踪功能;⽀持C语⾔编程。 | ||||||||||||||
| 运控功能 | ⽀持多轴多路直线/圆弧插补、连续插补、电⼦凸轮和追⻜剪功能;⽀持单轴运控(如定位、速度和回原等)功能。⽀持PLCopen标准指令库 | ||||||||||||||
| 集成的通信功能(PPI/自由口) | |||||||||||||||
| 通讯接口 | 2个通信口: | ||||||||||||||
| PORT0:PPI/自由口,标准RS485电平 | |||||||||||||||
| PORT1:PPI/自由口,标准RS485电平,在侧面引出 | |||||||||||||||
| 插上RS485扩展板并重新启动之后,PORT0固定为PPI口不可切换,自由口FPORT0配置到RS485扩展板。 | |||||||||||||||
| PPI波特率(baud) | 9.6k、19.2k和187.5k | ||||||||||||||
| 自由口波特率(baud) | 1.2k ~ 115.2k | ||||||||||||||
| 最大站点数 | 每段32个站,每个网络126个站 | ||||||||||||||
| 最大主站数 | 32 | ||||||||||||||
| 点到点(PPI主站模式) | 是(NETR/NETW),最多8个连接,每个连接最大通信200字节 | ||||||||||||||
| MPI连接 | 共8个(1PG/1OP),2个保留 | ||||||||||||||
| 每段最大电缆长度 | |||||||||||||||
| 使用隔离中继器 | 波特率为187.5k时1000米,38.4k时1200米 | ||||||||||||||
| 未使用隔离中继器 | 50米 | ||||||||||||||
| 以太网通信功能 | |||||||||||||||
| 通信接口 | 2个标配以太网口 | ||||||||||||||
| 通信标准 | 符合IEEE802.3 | ||||||||||||||
| 传输速度 | 10Mbps/100Mbps自适应 | ||||||||||||||
| 自适应交叉连接 | 支持 | ||||||||||||||
| 硬件接口 | RJ45 | ||||||||||||||
| 协议类型 | UDP,TCP/IP | ||||||||||||||
| 配置方式 | 通过编程软件MagicWorks PLC下载网络块进行配置 | ||||||||||||||
| 应用接口 | 支持MICO服务、UDP/PPI、TCP/Modbus、Socket,S7协议 | ||||||||||||||
| 最大连接数 | 8个UDP/PPI不分主从 | ||||||||||||||
| 8个TCP/Modbus不分主从 | |||||||||||||||
| 4个Socket连接,UDP和TCP各2个 | |||||||||||||||
| 8个S7协议,不分主从站 | |||||||||||||||
| EtherCAT接口最多支持16个从站连接 | |||||||||||||||
| 最大单次传输数据 | UDP/PPI每次操作最多200字节 | ||||||||||||||
| TCP/Modbus每次操作最多240字节 | |||||||||||||||
| Socket每次操作最多512字节 | |||||||||||||||
| S7协议每次操作最多200字节 | |||||||||||||||
| 网口启动时间 | 5~10秒,受网络环境影响。 | ||||||||||||||
| 指示灯 | RMC | 亮起:连接远程服务器成功 | |||||||||||||
| 熄灭:远程未连接或远程未使能 | |||||||||||||||
| LINK/ACT | 亮起:网口硬件已连接 | ||||||||||||||
| 闪烁:有数据交换 | |||||||||||||||
| 熄灭:网口硬件已断开 | |||||||||||||||
| 通信电缆长度 | 100M,电缆类型:CAT5e标准以上 | ||||||||||||||
| 隔离 | 通信口隔离 | ||||||||||||||
| IP地址复位功能 | 2秒内连续拨5次运行开关 | ||||||||||||||
| 升级固件功能 | 使用MagicWorks PLC及MiCo,通过以太网从公司服务器远程升级固件 | ||||||||||||||
| I/O特性 | |||||||||||||||
| 本机数字量输入点数 | 24 | ||||||||||||||
| 输入类型 | 漏型/源型 | ||||||||||||||
| 本机数字量输出点数 | 16 | ||||||||||||||
| 输出类型 | 漏型 | ||||||||||||||
| 数字I/O映象区 | 640DI/640DQ(含CAN通信专用映像区) | ||||||||||||||
| 模拟I/O映象区 | 194AI/194AQ(含CAN通信专用映像区) | ||||||||||||||
| 允许最大扩展I/O模块数 | 7 | ||||||||||||||
| 脉冲捕捉输入 | 不支持 | ||||||||||||||
| 高速计数器 | |||||||||||||||
| 总数 | 10 | ||||||||||||||
| 单相计数器 | 10×200KHz | ||||||||||||||
| AB相计数器 | 10×100KHz | ||||||||||||||
| 集成通信功能(CANopen)-扩展CAN通信板型号CTH2-CAN-01S2-EB时使用 | |||||||||||||||
| 通信接口 | 1个(8 Pin端子)”见CANopen通信接口表” | ||||||||||||||
| 传输率(kbps) | 1000 | 800 | 500 | 250 | 150 | 50 | 20 | ||||||||
| 最大长度(m) | 25 | 50 | 100 | 250 | 500 | 1000 | 2500 | ||||||||
| 最大站地址 | 127 | ||||||||||||||
| 站点地址范围 | 1-127 | ||||||||||||||
| 最大主站带从站数 | 32 | ||||||||||||||
| 配置方式 | CAN组态块和EDS文件 | ||||||||||||||
| 最大数字量访问 | 普通IO | CANopen专用IO | |||||||||||||
| 字节数 | 内存起始地址 | 字节数 | 内存起始地址 | ||||||||||||
| 输入 | 16 | IB0 | 输入 | 64 | IB16 | ||||||||||
| 输出 | 16 | QB0 | 输出 | 64 | QB16 | ||||||||||
| 最大模拟量访问 | 普通IO | CANopen专用IO | |||||||||||||
| 通道数 | 内存起始地址 | 通道数 | 内存起始地址 | ||||||||||||
| 输入 | 32 | AIW0 | 输入 | 162 | AIW64 | ||||||||||
| 输出 | 32 | AQW0 | 输出 | 162 | AQW64 | ||||||||||
| 集成通信功能(CANFree)-扩展CAN通信板时使用 | |||||||||||||||
| 通信协议 | CanFree | ||||||||||||||
| 使用方式 | 通过内部库指令支持 | ||||||||||||||
| 数字量输入特性 | |||||||||||||||
| 本机集成数字量输入点数 | 24 | ||||||||||||||
| 输入类型 | 漏型/源型 | ||||||||||||||
| 额定电压 | 24 VDC | ||||||||||||||
| 输入电压范围 | 20.4~28.8 VDC | ||||||||||||||
| 浪涌电压 | 35 VDC,持续0.5s | ||||||||||||||
| 逻辑1信号(最小) | 15 VDC,2.5mA | ||||||||||||||
| 逻辑0信号(最大) | 5 VDC,1mA | ||||||||||||||
| 连接2线接近开关传感器(BERO) | 1mA | ||||||||||||||
| 允许的漏电流(最大) | |||||||||||||||
| 输入滤波 | 可配置 | ||||||||||||||
| I0.0~I2.3支持以下参数: | |||||||||||||||
| 0.2us,0.4us,0.8us,1.6us,3.2us,6.4us,12.8us, | |||||||||||||||
| 0.2ms,0.4ms,0.8ms,1.6ms,3.2ms,6.4ms,12.8ms,默认为6.4ms | |||||||||||||||
| I2.4~I4.3支持以下参数: | |||||||||||||||
| 0.2ms,0.4ms,0.8ms,1.6ms,3.2ms,6.4ms,12.8ms,默认6.4ms | |||||||||||||||
| 隔离(现场与逻辑) | 500 VAC,1分钟 | ||||||||||||||
| 隔离组 | |||||||||||||||
| 同时接通的输入 | 24 | ||||||||||||||
| 最大电缆长度 | 500米(标准输入) | ||||||||||||||
| 屏蔽:50米(高速计数器输入);非屏蔽:300米(标准输入) | |||||||||||||||
| 数字量输出特性 | |||||||||||||||
| 本机集成数字量输出点数 | 16 | ||||||||||||||
| 输出类型 | 漏型 | ||||||||||||||
| 输出额定电压 | DC:24V | ||||||||||||||
| 输出电压范围 | DC:5~30V | ||||||||||||||
| 每个公共端最大电流 | 6A | ||||||||||||||
| 输出电流(最大) | 0.5A | ||||||||||||||
| 漏电流(最大) | 10uA | ||||||||||||||
| 浪涌电流 | 8A,100ms | ||||||||||||||
| 灯负载 | 5W | ||||||||||||||
| 导通电阻 | 典型值0.15Ω,最大0.32Ω | ||||||||||||||
| 输出延迟(最大) | 断开到接通: | ||||||||||||||
| 断开到接通/接通到断开 | 0.2us(16个Q点) | ||||||||||||||
| —— | |||||||||||||||
| 接通到断开: | |||||||||||||||
| 2us(16个Q点) | |||||||||||||||
| —— | |||||||||||||||
| 高速脉冲输出 | 8(Pulse/Dir)/10(Pulse)*200KHz | ||||||||||||||
| 输出频率(最大) | 200KHz(Q0.0到Q1.7) | ||||||||||||||
| 机械寿命(无负载) | 无 | ||||||||||||||
| 触点寿命(额定负载) | 无 | ||||||||||||||
| 同时接通的输出 | 16 | ||||||||||||||
| 两个输出并联 | 不支持 | ||||||||||||||
| 最大电缆长度 | 屏蔽 | 500米 | |||||||||||||
| 非屏蔽 | 150米 | ||||||||||||||
MagicWorksPLC简介
MagicWorksPLC支持梯形图编程、STL语言编程、C语言编程。详细的资料建议大家到合信官网进行学习。
https://www.co-trust.com/Products/Special1/Products/MagicWorks/PLC/desc.html
https://www.co-trust.com/Products/Special1/Products/MagicWorks/PLC/desc.html
下图为 MagicWorksPLC的基本界面和功能,包括硬件组态、通信调试、向导功能等,几乎和西门子编程软件一模一样。



M226ES 运动控制功能简介

M226ES运动控制功能非常强大,支持10轴脉冲输出、5个高速计数器、16个Ethercat从站。指令符合PLCOpen规则。并支持多种通信协议如S7、PN从站、UDP、UDP_PPI、ModbusTcp、Modbus RTU。M226es和当下最流行的汇川EASY系列PLC相比,M226ES的通信功能更为强大。基本所有功能都已经在项目中得到应用。





指令命名及状态机逻辑完全符合IC6613-3标准。下图为M226ES运动控制型PLC的运动控制指令列表,指令逻辑完全符合PLCopen运动控制指令标准。



介绍完了CPU之后就进入本文的主题,本文通过Snap7 开源库访问S7-200PLC MB存储区数据,并进行数据交互。有关snap7环境的搭建已经在上文中做了详细的介绍。感兴趣的可以到一下地址进行浏览。
https://blog.csdn.net/lzc881012/article/details/135345037?spm=1001.2014.3001.5502
https://blog.csdn.net/lzc881012/article/details/135345037?spm=1001.2014.3001.5502 将上文例程C++代买改为如下图所示,同时读取S7-1200PLC DB块和M226ES MB存储区数据。M226ES存储区数据起始地址为MB500,读取数量为100个Byte。

#include <iostream>
#include"snap7.h"
#include <ctime> using namespace std;unsigned char Snap7Rcv[100];
unsigned char Snap7RcvM226Es[100];
TS7Client* mClient;
void mSnap7GetDataFromS71200Db()
{mClient = new TS7Client;mClient->ConnectTo("192.168.2.202", 0, 1);mClient->DBRead(9,0,100,&Snap7Rcv);delete mClient;
}void mSnap7GetDataFromM226EsMbBlock()
{mClient = new TS7Client;mClient->ConnectTo("192.168.2.201", 0,0);mClient->MBRead(500,100, &Snap7RcvM226Es);delete mClient;
}
void Delay(int time)
{clock_t now = clock();while (clock() - now < time);
}
int main()
{while (true){mSnap7GetDataFromS71200Db();mSnap7GetDataFromM226EsMbBlock();Delay(1000);for (int i = 0; i < 100; i++){cout << "mSnap7GetDataFromS71200Db-Snap7DB.Snap7Byte" << "[" << i << "]" << "=" << (int)Snap7Rcv[i] << endl;cout << "mSnap7GetDataFromS71200Db-Snap7MB.MB" << "[" << 500 + i << "]" << "=" << (int)Snap7RcvM226Es[i] << endl;}}}
MagicWorksplc中可以看到PLC的机架号和槽位号。如下图所示。

本例程除了上位C++软件同时读取S7-1200plc DB数据和M226ES MB存储区数据外,S7-1200还作为从站和M226ES作为主站进行通信,S7-1200作为PN主站和M226ES作为PN从站进行通信,S7-1200和M226ES之间进行UDP通信,本例程包含多种通信同时进行。具体程序如下。UDP通信S7-1200PLC侧也要编写程序。
TIA硬件组态和UDP通信程序。






















在状态表中监控MB500-MB599存储区的数据。如下图所示。



气动C++程序进行数据读取测试,如下图所示可看到Snap7同时读取S7-1200PLC DB块和M226ES PLC MB块数据成功。



相关链接
Snap7:

https://snap7.sourceforge.net/
https://snap7.sourceforge.net/EtherCAT:

https://www.beckhoff.com/en-en/
https://www.beckhoff.com/en-en/PLCOpen:

https://www.plcopen.org/
https://www.plcopen.org/CanOpen:

https://www.can-cia.org/canopen/
https://www.can-cia.org/canopen/Cotrust:

https://www.co-trust.com/Company/Idea/index.html
https://www.co-trust.com/Company/Idea/index.htmlSiemens:
https://www.siemens.com/cn/zh.html
https://www.siemens.com/cn/zh.html
相关文章:
C++上位软件通过Snap7开源库访问西门子S7-200/合信M226ES数据块的方法
前言 上一篇文章中介绍了Snap7访问西门子S7-1200/S7-1500 DB块的方法,对于S7-200PLC是没有数据块访问的。S7-200PLC中Snap7只能通过访问MB块,VB块的方法进行和PLC之间的Snap7通信和数据交换。手头没有S7-200PLC故通过合信CTMC M226ES运动控制器进行测试&…...
通信及信号处理领域期刊影响因子、分区及期刊推荐-2024版
期刊名IF(202401)中科院分区(20231227)备注IEEE Journal on Selected Areas in Communications16.4计算机科学1区Top通信顶刊IEEE Transactions on Signal Processing5.4工程技术2区Top信号处理顶刊IEEE Transactions on Information Theory2.5计算机科学3区信息论顶刊IEEE Tra…...
cfa一级考生复习经验分享系列(十五)
备考背景: 本科211石油理科背景;无金融方面专业知识及工作经验;在职期间备考;有效备考时间2个月;12月一级考试10A。 复习进度及教材选择 首先说明,关于教材的经验分享针对非金融背景考生。 第一阶段&#x…...
如潮好评!优秀选手视角下的第二届粤港澳大湾区(黄埔)国际算法算例大赛
为发挥国家实验室作用、推动地区大数据与人工智能算法的生态体系建设,琶洲实验室(黄埔)受广州市黄埔区政府委托,于 2022 年创办粤港澳大湾区(黄埔)国际算法算例大赛,推动原始创新、赋能社会经济…...
软件测试之冒烟测试
一、什么是冒烟测试 这一术语源自硬件行业。对一个硬件或硬件组件进行更改或修复后,直接给设备加电。如果没有冒烟,则该组件就通过了测试。在软件中,“冒烟测试”这一术语描述的是在将代码更改嵌入到产品的源树中之前对这些更改进行验证的过…...
NE555学习笔记-2024
实物图片 NE555引脚图 内部时序图 示列1,红外接收电路 红外接收电路的工作原理:在上述电路中,TSOP1738构成了该电路的主要组成部分,旨在检测来自任何来源的红外信号。这用于检测38 KHz范围的信号,因此命名为“TSOP173…...
记一次docker中安装redis的过程
1. Docker搜索redis镜像 docker search redis2. Docker搜索redis镜像 docker pull redis3.Docker挂载配置文件 挂载 redis 的配置文件挂载 redis 的持久化文件(为了数据的持久化)。 conf文件位置: /home/redis/myredis/redis.conf data文件…...
Matlab进阶绘图第37期—多色悬浮柱状图
多色悬浮柱状图是一种特殊的柱状图。 与常规柱状图相比,多色悬浮柱状图可以通过悬浮的矩形展示最小值到最大值的范围(或其他范围表达),并通过颜色进行美化/区分/附加信息。 本文使用自己制作的Floatingbar小工具进行多色悬浮柱状…...
【嵌入式】About USB Powering
https://www.embedded.com/usb-type-c-and-power-delivery-101-power-delivery-protocol/https://www.embedded.com/usb-type-c-and-power-delivery-101-power-delivery-protocol/ Type-C接口有多强?PD协议又是什么?-电子发烧友网由于Type-C接口自身的强…...
MySQL——事物
目录 一.发现问题 二.什么时事物 三.事务提交方式 四.事物的常规操作方式 五. 事务隔离级别 1.如何理解隔离性 2.隔离级别 3.查看与设置隔离性 4.读未提交【Read Uncommitted】 5.读提交【Read Committed】 6.可重复读【Repeatable Read】 7.串行化【serializabl…...
Windows搭建RTSP视频流服务(EasyDarWin服务器版)
文章目录 引言1、安装FFmpeg2、安装EasyDarWin3、实现本地\虚拟摄像头推流服务4、使用VLC或PotPlayer可视化播放器播放视频5、RTSP / RTMP系列文章 引言 RTSP和RTMP视频流的区别 RTSP (Real-Time Streaming Protocol)实时流媒体协议。 RTSP定义流格式&am…...
私域营销,让你的生意从线下到线上都火爆!
一、提高流量 获取流量的五个关键要素:目标受众、传播渠道、内容策略、短期利益和长期价值 在当今竞争激烈的市场环境中,获取流量是每个企业和个人都必须面对的挑战。为了有效地吸引潜在客户,我们需要关注五个关键要素:目标受众…...
MATLAB基本绘图操作(二维和三维绘图)
MATLAB基本绘图操作 文章目录 MATLAB基本绘图操作1、二维平面绘图1.1、线条(折线图)1.2、条形图1.3、极坐标图1.4、散点图 2、三维立体绘图2.1、三维曲面图2.2、三维曲线图(点图) 3、图片分区(子图) 1、二维…...
中国社科院与新加坡新跃社科联合培养博士—攻读在职博士的理由是什么?
当今社会,很多人已经深刻的意识到知识是改变自己命运的重要途径,在职教育的完善让很多在职人员选择此方式进修,那么为什么要选择攻读在职博士?中国社科院与新加坡新跃社科联合培养博士与您一起走进,在职博士。 那么其…...
T40N 君正智能处理器T40 BGA 芯片
T40N是一款智能视频应用处理器,适用于移动摄像机、安防等视频设备调查、视频聊天、视频分析等。该SoC引入了一种创新的体系结构满足高性能计算和高质量图像和视频编码的要求通过视频设备解决。T40N提供高速CPU计算能力,出色的图像信号过程中,…...
Profinet转Modbus使设备互联更简单
在工业自动化领域,为了使设备互联更加简单,可以将Modbus和Profinet相互转换。这样一来,设备之间的互联就变得更加方便和高效。通过Modbus转Profinet网关(XD-MDPN100/200),设备之间的通信变得更加灵活和可靠…...
Android 文字垂直排列,文字向右旋转90度
public class VerticalTextView extends View {private final int ROTATION_ANGLE 90; // 旋转角度,用于将文本垂直排列private String text; // 要显示的文本private TextPaint textPaint; // 用于绘制文本的画笔private Rect textBounds;// 文本边界float x, y;/…...
域名授权验证系统PHP源码,盗版追踪、双重授权和在线加密功能,附带安装教程
源码介绍 PHP域名授权验证系统是一个功能强大的系统,提供了多项功能来保护你的域名和软件的合法性。它包括盗版追踪、域名IP双重授权、在线加密等功能,同时还提供了PHP授权验证更新系统的完整版,方便你进行一键更新和生成自助授权。 盗版追…...
Qt线程封装FFmpeg播放器类
介绍 工作开发中需要处理的文件很多并无音频,针对这一场景,这里分享工作中自己封装使用的类库。精简的代码实现了播放、暂停、停止、快进、快退、进度跳转、倍速播放功能。直接放代码,方便后期复制使用。 代码 头文件 /*** file videopla…...
git 常用命令 修改 远程仓库 默认分支
git remote set-head origin -a 将 origin/HEAD 指向 远程仓库的 默认分支(-a 即 --auto) git remote set-head origin dev 将 origin/HEAD 指向 (origin/dev) git remote set-head origin -d 删除 origin/…...
XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...
【Python】 -- 趣味代码 - 小恐龙游戏
文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
大语言模型如何处理长文本?常用文本分割技术详解
为什么需要文本分割? 引言:为什么需要文本分割?一、基础文本分割方法1. 按段落分割(Paragraph Splitting)2. 按句子分割(Sentence Splitting)二、高级文本分割策略3. 重叠分割(Sliding Window)4. 递归分割(Recursive Splitting)三、生产级工具推荐5. 使用LangChain的…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
cf2117E
原题链接:https://codeforces.com/contest/2117/problem/E 题目背景: 给定两个数组a,b,可以执行多次以下操作:选择 i (1 < i < n - 1),并设置 或,也可以在执行上述操作前执行一次删除任意 和 。求…...
select、poll、epoll 与 Reactor 模式
在高并发网络编程领域,高效处理大量连接和 I/O 事件是系统性能的关键。select、poll、epoll 作为 I/O 多路复用技术的代表,以及基于它们实现的 Reactor 模式,为开发者提供了强大的工具。本文将深入探讨这些技术的底层原理、优缺点。 一、I…...
人工智能(大型语言模型 LLMs)对不同学科的影响以及由此产生的新学习方式
今天是关于AI如何在教学中增强学生的学习体验,我把重要信息标红了。人文学科的价值被低估了 ⬇️ 转型与必要性 人工智能正在深刻地改变教育,这并非炒作,而是已经发生的巨大变革。教育机构和教育者不能忽视它,试图简单地禁止学生使…...
comfyui 工作流中 图生视频 如何增加视频的长度到5秒
comfyUI 工作流怎么可以生成更长的视频。除了硬件显存要求之外还有别的方法吗? 在ComfyUI中实现图生视频并延长到5秒,需要结合多个扩展和技巧。以下是完整解决方案: 核心工作流配置(24fps下5秒120帧) #mermaid-svg-yP…...

