PMAC_PEWIN运动程序下载问题的分析
PMAC-PEWIN运动程序下载问题的分析
PMAC-PEWIN运动程序下载问题的分析
王利杰;吴玉厚
【期刊名称】《机电产品开发与创新》
【年(卷),期】2006(19)4
【摘要】使用PMAC-PEWIN软件下载在PEWIN编辑器中编制的运动程序时,遇到了大程序不能完整下载和不能正确下载的问题,经过对各种情况的对比分析,得出PEWIN分配的缓冲区不足是问题出现的原因;给出了修改PEWIN软件源代码三种方法;找到了避开PEWIN为程序分配缓冲区的两种方法,并验证了这些方法的正确性.
【总页数】2页(P9-10)
【作者】王利杰;吴玉厚
【作者单位】沈阳建筑大学,交通与机械工程学院,辽宁,沈阳,110168;沈阳建筑大学,交通与机械工程学院,辽宁,沈阳,110168
【正文语种】中文
【中图分类】TP3
【相关文献】
1.用VB程序分析机构运动时图形失真问题的处理 [J], 林莉
2.LTE网络低下载速率问题分析方法的研究 [J], 孙琛;李春明;武琳栋
3.电视节目上、下载中遇到的问题分析和解决办法 [J], 尹丽丽
4.J-Link仿真器程序无法下载问题的硬件电路解析 [J], 朱江;李春芾;宋洪慧
5.LTE核心网防火墙端口隐患导致4G业务下载速率波动问题分析 [J], 任姣姣;赵俊
因版权原因,仅展示原文概要,查看原文内容请购买。
PMAC基础调试资料
PMAC总结一PMAC 简介 (2)1-1 PMAC 含义 (2)1-2 PMAC 特点 (3)1-3 PMAC 分类 (3)1-4 PMAC 常用附件 (3)二PMAC 硬件接线 (4)2-1 PMAC跳线的设置 (4)2-2 PMAC转接板的选用 (4)2-3 PMAC 接口 (4)2-3-1 PMAC I型卡的接口 (4)2-3-2 PMAC 2型卡的接口 (5)2-4 PMAC卡的示意图 (6)2-4-1 PMAC一型卡的接线示意图 (6)2-4-2 PMAC2A-PC104 卡的接线示意图 (6)2-5 PMAC 的使能接线示意图 (8)2-6 PMACI 型卡J5(JOPT)接线示意图 (9)三PMAC 相关软件 (10)3-1 执行软件 (10)3-2 开发软件 (10)四PMAC 基本参数 (10)4-1 PMAC I变量 (10)4-1-1 PMAC一型卡的I 变量参数设置 (11)4-1-2 PMAC二型卡的I 变量参数设置 (11)4-1-3 PMAC2A-PC/104型卡I 变量参数设置 (12)4-2 PMAC P 变量 (13)4-3 PMAC Q 变量 (13)4-4 PMAC M 变量 (13)五PMAC电机PID调整 (13)5-1 PID调整的前提 (13)5-2 与PID 调整有关的I 变量 (14)六PMAC运动指令 (14)6- 1开环指令 (14)6-2 闭环指令 (14)6-3 回零指令 (14)七注意事项 (15)一PMAC 简介1-1 PMAC 含义PMAC是program multiple axis controller 可编程的多轴运动控制卡。
1-2 PMAC 特点PMAC卡是美国deltatau公司的产品,是集运动轴控制,和PLC控制以及数据采集的多功能的运动控制产品.1-3 PMAC 分类1)PMAC 按控制电机的控制信号来分,可分为一型卡和二型卡 ,一型卡输出+-10V模拟量,主要用于速度方式控制伺服电机,二型卡输出 PWM 数字信号,可直接变为 PULSE+DIR 信号,来控制步进电机和位置控制方式的伺服电机2)PMAC卡按照控制轴数来分如下表格当然除了板卡的形式以外,PMAC还有集成的系统产品,有UMAC QMAC ADVANTAGE NC400 NC800 等1-4 PMAC 常用附件二PMAC 硬件接线2-1 PMAC跳线的设置在PMAC 接线之前,先进行跳线的设置.1)PMAC一型卡的跳线设置E85 E87 E88 :设置PMAC卡模拟量电源,缺省设置为都设为OFF状态,表示PMAC卡的模拟量电源+-12~+-15V是通过外部供给;而如果都设为ON,表示模拟量+-12~+-15电源是从PC机总线得到;E89 E90:设置+-LIMn 和FLAG 的电源供给,这两个跳线需要随着E85 E88的设置变化而变化,E90的跳线在1`2 的时候表示从J11供电,在2`3 的时候从总线供电;E51: PMAC卡从新初始化的设置,此跳线在PMAC卡正常工作时,应为OFF, 卡由于故障或其他原因需要初始化时,才需将此跳线设为ON;E3—E6:伺服时钟频率与I10变量有关,缺省为E5 E6为ON;E29—E33:相时钟频率,缺省为9.04KHZ,E31设为ON;E34—E38 :编码器采样时钟频率,缺省为:9.8304MHZ E34设为ON;E17A-E17D: 1-4电机的伺服使能的极性控制;E24—E27: 1-4 编码器的输入形式控制,是单端/差分线驱动输入,1-2 ON集电极开路, 2-3 ON;E40—E43 :PMAC卡号的设置,缺省为E40—E43都设为ON,相当于是 @0号卡;E44—E47 :设置串口通讯的波特率。
PMAC培训
PMAC应用培训计划第一天 上午9:30 -10:00 交流培训需求 10:00 -11:40 Pmac卡概述及clipper硬件介绍(含Pmac-pc104) 11:50 -12:50 吃午饭 下午1:00 -2:00 Pewin32pro及相关软件的使用 2:00 -4:00 分组实际操作练习 第二天 上午9:30 -11:40 在线指令和变量说明及注意事项(含Pmac-pc104) 11:50 -12:50 吃午饭 下午1:00 -2:00 PID调节方法 2:00 -4:00 分组实际操作练习 第三天 上午9:30 -11:40 简单运动的编写和plc程序的编写方法 11:50 -12:50 吃午饭 下午1:00 -2:00 简介上位软件的通讯 2:00 -4:00 答疑及分组实际操作练习PMAC应用培训北京钧义志成科技发展有限公司PMAC多轴运动控制卡• PMAC的含义: • PMAC是program multiple axis controller 可编程的多轴运动控制卡。
• PMAC的特点: • PMAC卡是美国Deltatau公司的产品,是集 运动轴控制,和PLC控制以及数据采集的多 功能的运动控制产品。
PMAC卡1型和2型卡的主要区别• 1型卡 控制信号为模拟量,+-10V • 2型卡 控制信号为数字量,直接输出 PWM脉宽调制信号PMAC卡轴数类型• 2轴卡 PMAC MINI PCI MINI PMAC2 • 4轴卡 PMAC PCI Lite PMAC2 PCI Lite PMAC2A-104 • 8轴卡 PMAC PCI PMAC2 PCI PMAC2A-104+ACC1P • 32轴卡 Turbo PMAC PCI Turbo PMAC2 PCIPMAC新产品Clipper• 4轴 Clipper • 8轴 Clipper + Acc1P • 12轴 Clipper + Acc1P(2块)PMAC通讯方式类型• • • • PCI PC104 总线 USB 通讯 (PMAC2A-104 UMAC) 串口 通讯 RS422 或RS232 网卡通讯 ( PMAC2A-104 Clipper)ClipperTurbo PMAC2-Eth-Lite controllerTurbo PMAC Clipper 简介• Turbo PMAC Clipper是一个基于 TurboPMAC2 CPU功能齐全,结构紧凑, 成本的多轴控制器,标配以太网和RS232 通信接口和内置的I O. Clipper提供完整 TurboPMAC 2处理器,并提供最低配置4轴 伺服或步进控制32个数字I / O点。
PMAC入门教程-让电机动起来
邮编: 100102
4.屏蔽报警
PMAC(中国)
பைடு நூலகம்
因为没有设置电机没有设置限位,所以关掉硬件位置限制,同时,如果你也不知道驱动 器是高报警还是低报警,可以把驱动器报警也关掉。这些通过 Ixx24 进行设置。如图 4.1
图 4.1 对于 PMAC2 型卡,我们可以让 Ixx24=$120001,关闭驱动器报警,关闭位置限制。对于 前面的例子就是在“Terminal”窗口键入“I124=$120001”回车。
调整好的曲线应该接近图 6.3
图 6.3
7.JOG
当 PID 调整完毕后,我们可以开始 JOG,让电机开始转动。在“Terminal”窗口键入“#1j+” 回车。如果要停止可以键入“#1j/”。如图 7.1
地址:北京市 朝阳区 望京阜通东大街 6 号院 方恒国际 C 座 1608 室 电话::010-6439 2833 传真::010-6439 2860-18 8 / 30
2、打开 PMAC Tuning Pro2
3、一般第一步是看系统的开环特性
地址:北京市 朝阳区 望京阜通东大街 6 号院 方恒国际 C 座 1608 室 电话::010-6439 2833 传真::010-6439 2860-18 10 / 30
邮编: 100102
PMAC(中国)
看开环特性是否正确:指令和反馈是否方向一致,
图 5.3 如果出现以下,如图 5.4 所示,说明电机编码器反馈设置不对,电机运动与指令方向完 全相反。此设置可以在 I7mn0 中调整,对于#1 号轴是 i7010。I7mn6 的设置如图 5.5,具体 可以参见软件手册。
地址:北京市 朝阳区 望京阜通东大街 6 号院 方恒国际 C 座 1608 室 电话::010-6439 2833 传真::010-6439 2860-18 6 / 30
PMAC教材
PMAC教材1.PMAC控制卡及泰道公司简介1.1PMAC控制卡PMAC是可编程多轴控制器(Programmable Multi-Axis Controller)的简称,是美国泰道(Delta Tau Data Systems, Inc )公司⽣产的功能强⼤的运动控制器,PMAC是⽬前世界上功能最强的运动控制器,同时也是当前开放式数控系统控制器的突出代表1.2泰道公司介绍泰道公司拥有三⼗多年丰富的运动控制经验,是⾸屈⼀指的创新型、⾼性能机器控制专家,拥有全球数百万轴的惊⼈控制能⼒;⾃从上世纪90年代初推出第⼀款基于DSP的8轴的PMAC产品,每三年左右便会推出⼀款新的产品,如今最新的第七代产品Power PMAC(基于Power PC)已达到惊⼈的256轴的控制能⼒。
1.3应⽤范围由于其灵活的结构和开放性的编程接⼝,PMAC有着⾮常⼴泛的从最简单的到最复杂的应⽤,如半导体制造、航空、通⽤⾃动化、机器⼈控制、半导体⽣产线⾃动化、各类数控机床、医药设备、各种测量和定位机具、包装⽣产流⽔线⾃动化等等。
以下是在⼀些公司中1.4PMAC特性PMAC是⼀台具有独⽴内存、独⽴运算操作能⼒的计算机,采⽤泰道独有的实时内核(基于DSP的卡)或实时Linux操作系统(基于Power PC的卡)通过存储在⾃⼰内部的程序进⾏单独的操作;它还是⼀台实时的、多任务的计算机,能⾃动对任务进⾏优先等级判别,先执⾏优先级⾼的任务。
PMAC既可以独⽴⼯作亦可按主机的命令进⾏⼯作,它和主机的通讯可以通过串⾏⼝也可以通过总线进⾏,通过总线通讯时,还可以将中断信号引⼊主机,从⽽实现⾮常灵活有效的控制系统。
PMAC可以通过灵活的类似Basic的⾼级语⾔(Power PMAC还可以⽤C语⾔)控制多轴运动,提供了运动控制、可编程逻辑控制、同主机交互等基本功能;并具有各种现场总线和多种反馈装置接⼝。
PMAC的最⼤特点是开放性。
允许⽤户根据⾃⼰的⽤途使⽤内部寄存器。
466D机台WINXP系统PMAC卡驱动安装方法
466D机台WINXP系统PMAC卡驱动安装方法一、先安装好机台PMAC卡新的驱动程序,PMAC卡安装程序,包含了PEWIN PRO 3.20和SP3两个文件夹,安装方法和266E机台PMAC卡安装方法相同,在此不多做描术,安装完后可见“开始”→“程序”→“PEWIN32PRO”→“PEWIN32PRO”。
二、安装好PMAC卡驱动后还需要在“控制面板”内“添加新硬件”,如果不添加新硬件的话,在“设备管理器”内是看不到PMAC卡的。
如果启动“PEWIN32PRO”程序,则可能出现如下图所示的情况:1)2)三、添加新硬件方法:1)打开“控制面板”选择“添加硬件”后会弹出“欢迎使用添加硬件向导”;2)点击“下一步”后在弹出的对话框中选择“是,我已经连接了此硬件”,点击“下一步”后在弹出的已安装的硬件例表里将导航按钮拉到最下端,选择“添加新的硬件设备3)接下来选择手动安装,“安装我手动从列表选择的硬件(高级)”,点击下一步后在弹出来的对话框中双击“显示所有设备”。
注意,这时在例表里可以看到一个“PCMCIA 卡”,不要被其误导,这个不是我们所要的。
4)双击显示所有设备后,等待一会儿重新刷新例表,如下面左图所示,在左边“厂商”一栏下面,往下找到一个“Delta Tau Data System……”选择后在右边的“型号”里选择“PMAC ISA Motion Controller”,点击下一步;如下面右图所示,点击“下一步”;5)点击“下一步”后如下面左图所示,提示硬件安装完成,点击“完成”,会如下面右图所示要求系统重启,暂时我们先选择“否”,窗口关闭,添加新硬件的过程就完成了,但PMAC卡的设置还未完成,系统重新启动浪费时间。
6) 现在进行设备管理器的设置,打开“设备管理器”,如下面左图所示可以找到我们刚刚添加的新硬件,“PMAC ISA Motion Controller ”,选中后手标右击,选择“属性”→“资源”,如下面右图所示,将“使用自动设置”前的“√”去掉,双击“输入输出范围”;7) 如下左图所示,弹出“编辑输入输出范围”对话框,将其“值”选择为“0210-021F ”,点击确定,如下右图所示要求重新启动系统,点击“是”,重新启动WINDOWS 系统。
基于PMAC的G代码连续下载技术研究
[1] 王哲元.机床数控技术的发展现状与发展趋势探析[J].湖北农机 化,2020(06):52.
[2] 李君,马啸.基于PC机的开放式数控系统研究[J].信息技术与信 息化,2013(02):80-82.
[3] 郭鼓,李树军,徐永新,杨凯,金益韩.一种基于PMAC的开放式数 控系统的设计与实现[J].制造业自动化,2012,34(04):106-110.
实时命令行显示,支持断点续加工等功能特点,显著提高了系统性能。
关键词:PMAC;G代码;文件下载;数控系统
中图分类号:TP311
文献标识码:A
文章编号:1009-0134(2021)04-0005-03
0 引言
随着制造业的发展,从数控技术角度而言,自动 化、柔性化、集成化、智能化是未来数控技术发展的方 向。从生产方式角度而言,生产方式正在从批量化的生 产方式向多品种、小批量的生产方式转变,对数控系统 提出了更高的要求。传统的封闭式数控系统很难满足行 业及技术的不断更新及变化,不能满足市场发展的需 要。因此,开放式数控系统应运而生,PMAC作为开放 式数控系统的典型代表,具有功能丰富、可扩展、可移 植等诸多优点得到了广泛的应用 。 [1,2] 在铸造行业中, 特种加工装备根据铸造特殊工艺,采用“PC+PMAC” 的开放式数控系统架构,基于PMAC的二次开发,结合 砂型加工工艺,开发出专用的数控系统软件,具有柔性 化、集成化、网络化、智能化等特点,满足了铸造砂 型的多品种、小批量试制件的生产需要[3]。然而,由于 PMAC硬件存储空间的限制,无法满足大容量文件的下 载,因此,本文提出通过将大文件拆分的方法,解决连 续下载的问题。
摘 要:基于PMAC的标准机床G代码的读取,由于PMAC内存空间的限制,无法下载大容量的G代码
pmac入门操作注意事项
PMAC卡,本身集运动控制和过程控制为一体。
光主卡和附件就有上百种型号,资料也是相当的繁多。
对初学者来说想尽快上手有一定的难度。
我公司编写的PMAC卡培训资料,集理论和实际应用经验为一体。
是我公司技术人员多年来实际应用以及为客户培训中总结出来的东西。
目的是让初学者更简单有效的了解和应用pmac卡,做到试验和测试具体功能的程度。
使用PMAC卡时,资料方面建议大家从相应的卡的软件手册、硬件手册、用户手册入手。
比如:clipper卡,参看“TURBO SRM.PDF”、“CLIPPER HRM.PDF”、“TURBO PMAC USER MANUAL.PDF”。
三本手册就可以了。
pwein32pro软件,可以参看“PEWIN32 PRO.PDF”资料。
PMAC指令不区分大小写。
分为在线指令和编程指令两种。
在TURBO SRM.PDF资料中,有在线指令和编程指令详细介绍。
一.在线指令(pwein32pro软件)1.参数初始化指令$$$***M0..8192->*M0..8192=0P0..8192=0Q0..8192=0Undefine all2.保存指令Save 指令3.常用I变量参看TURBO SRM.PDF资料之中的I变量说明以下内容来自于我公司别写的PMAC卡培训资料。
PMAC卡的I变量为卡,电机和编码器等的参数变量,用于设置电机的速度,精度,回零等数值,以及坐标系的状态,还包括编码器的反馈形式。
PMAC卡的I变量分类如下:Turbo PMAC I 变量:I0 – I99 全局变量(其中I5是PLC程序的使能变量,使用PLC程序时必须设置这个变量,不然的话程序是跑步起来的。
I5 = 0 无PLC程序被使能= 1 前台PLC’s使能后台PLC’s不使能= 2 前台PLC’s 不使能后台PLC’s 使能= 3 所有PLC’s 和PLCC’s 使能所有存在的PLC’s在上电和复位时由I5变量决定)I100 –I199为#1电机的设置变量I200 –I299为#2电机的设置变量……I7000 – I7999 Servo IC设置变量以下为PMAC卡的重要I变量,是用户经常会修改到的以下*=1-8电机I*00: 电机的禁能/使能控制,I*00=1 表示使能I*02: 电机的模拟量输出地址,该地址对于1型卡和2型卡应为特定的I*03=位置反馈地址I*04=速度反馈地址对于同一个反馈元件,I*03=I*04I*29:DAC模拟量输出的微调。
apnmcp程序错误解决方案
apnmcp.exe程序错误解决方案19apnmcp.exe程序错误解决方案;解决方案1:;?.exe遇问题需要关闭弹0x03e7c738指;解决?、应用程序没检查内存配失败程序需要块内存用;内存永远都招即.exe/:运行regedit进入;a:系统比较稳定重装系统经随机现Explorer;例九?..能内存条坏或与主板接触;2;system32\,?.散热问题--加强机箱;6;written&quapnmcp.exe程序错误解决方案解决方案1:?.exe遇问题需要关闭弹0x03e7c738指令引用0x03e7c738内存该内存能read解决?、应用程序没检查内存配失败程序需要块内存用保存数据需要调用操作系统提供功能函数申请内存配功函数所新辟内存区址返给应用程序应用程序通址使用块内存态内存配内存址编程指针内存永远都招即.exe /:运行regedit进入注册表:a:系统比较稳定重装系统经随机现Explorer-应用程序错误0x4a01259d 指令引用0x00000000"、或硬件故障或损坏造, 其删除(默认键值要删除)例九?..能内存条坏或与主板接触2;system32\,?.散热问题--加强机箱内部散热6;written".".dll右键属性现兼容性选项例三.;0x70dcf39f"?:先简单说说原理:内存存放数据叫缓冲区程序数据放其位置没足够空间发溢现象举例;内存.能某软件问题想想新装软件卸载掉我认种原能性非请定耐看完本解答认真查找问题原内存能":内存条坏,依靠解决种故障?;Mewin2000打SP补丁要始运行输入?:例.exe文件属性兼容性用兼容模式运行程序项选择并选择Windows 98/?.故障析、用尽候内存配失败配失败系统函数返0值返值0已表示新启用指针系统向应用程序发通知告知现错误作应用程序每申请内存都应该检查返值否0则意味着现故障应该采取些措施挽救增强程序健壮性若应用程序没检查错误按照思维惯性认值给配用指针继续运行使用块内存真0址内存区保存计算机系统重要断描述符表绝允许应用程序使用没保护机制操作系统(DOS)写数据址导致立即死机健壮操作系统Windows等操作马系统保护机制捕获其结由操作系统强行关闭错应用程序防止其错误扩候现述写内存错误并指引用内存址0x00000000内存配失败故障原内存够,旦遇资源死锁:修复或升级IE浏览器同打补丁看其修复WinXP自升级WinXP升级WinXP其实种系统原系统初始状态比IE 升级7、溢或者类似Windows 98非操作系统保持稳定现述情况另外能硬件设备间兼容性造c,重装官网站载相应版本补丁试试行换用别播放器试试例五、解决办1;0x:windows xp双击光盘面AutoRun?;指令引用". 想要解决问题想简单都系统干净病毒前提进行能肯定系统病毒请删除前杀病毒软件空软件园载卡巴2009全功能安全软件升级杀干净系统病毒再载360卫士打全系统补丁先试?;read"*??:for %1 in (%windir%\?;s %1 前面完再试始-运行-cmd-输入;0x00000000".0例六:运行某些程序候现内存错误提示该程序关闭0x?内存该内存能read0x,能重新安装操作系统.;指令引用".;XP硬件要求苛刻内存配现错误1, 现错误提示:桶能斤水放入两斤水进入溢系统则屏幕表现问题经现windows2000XP系统Windows 2000/.:般说内存现问题能性并主要面.内存质量问题--更换内存条5.查看系统否木马或病毒类程序控制系统往往负责任修改系统导致操作系统异平应加强信息安全意识源明执行程序绝奇2,请删除再试软件bug能现种情况并且往往解决;s %1请仔细想问题前安装软件.试用第三浏览器傲游行?指令引用0x00000000内存该内存能written应用程序关闭其实错误并定Windows稳定造本文简单析种错误见原:使用输入微软拼音输入2003并且隐藏语言栏(隐藏没问题)关闭RealOne 现问题关闭RealOne前显示语言栏或者任意其输入作前输入解决问题例四.内存主板没插或其硬件兼容等--重插内存或换插糟7:利用QQBUG发送特殊代码做QQ错要打补丁或升级新版本没事例七:for %1 in (%windir%\. 想要执行程序现故障重新安装程序试请找更新版本试新版本关闭ie或ie故障试升级ie版本前ie6升ie7试前ie7试升级ie8??:regsvr32 c,再进行测试:重装显卡新驱程序载并且安装DirectX9?.举例说明.dll) do regsvr32:0X?指令引用0x,少太怜能说试始-运行-cmd-输入:双击游戏快捷式Ox77f5cdO指令引用Oxffffffff内存该内存能read 并且提示Client?.内存条坏--更换内存条3:打IE浏览器或者没几钟现":1.0自升级IE6;{AEB6717E-7E19-11d0-97EE-00C04FD91972}???指令引用0x:电脑现错误信息;system32\????, HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplore rShellExecuteHooks 应该键值".问题产原原--解决2:播放器能播放每都提示Ox060692f6(每变化)指令引用Oxff000011内存能read终止程序请按确定解决.硬盘问题--更换硬盘8.、应用程序由于自身BUG引用内存指针使用态配应用程序情况现、系统函数版本匹配等都能影响种配失败见于操作系统使用间安装种应用程序(包括意安装病毒程序)更改量系统参数系统文件apnmcp.exe程序错误解决方案19先简单说说原理:内存存放数据叫缓冲区程序数据放其;我认种原能性非;请定耐看完本解答认真查找问题原;内存能":内存条坏,依靠解决种故障?;;例.exe文件属性兼容性用兼容模式运行程序项选择;若应用程序没检查错误按照思维惯性认值给配用指针继;内存配失败故障原内存够,旦遇资源死锁:修复或升级;性造;c,重装官网站载相应版本补丁试试行换用别播放器试;例五、先简单说说原理:内存存放数据叫缓冲区程序数据放其位置没足够空间发溢现象举例;内存.能某软件问题想想新装软件卸载掉我认种原能性非请定耐看完本解答认真查找问题原内存能":内存条坏,依靠解决种故障?;Mewin2000打SP补丁要始运行输入?:例.exe文件属性兼容性用兼容模式运行程序项选择并选择Windows 98/?.故障析、用尽候内存配失败配失败系统函数返0值返值0已表示新启用指针系统向应用程序发通知告知现错误作应用程序每申请内存都应该检查返值否0则意味着现故障应该采取些措施挽救增强程序健壮性若应用程序没检查错误按照思维惯性认值给配用指针继续运行使用块内存真0址内存区保存计算机系统重要断描述符表绝允许应用程序使用没保护机制操作系统(DOS)写数据址导致立即死机健壮操作系统Windows等操作马系统保护机制捕获其结由操作系统强行关闭错应用程序防止其错误扩候现述写内存错误并指引用内存址0x00000000内存配失败故障原内存够,旦遇资源死锁:修复或升级IE浏览器同打补丁看其修复WinXP自升级WinXP升级WinXP其实种系统原系统初始状态比IE 升级7、溢或者类似Windows 98非操作系统保持稳定现述情况另外能硬件设备间兼容性造c,重装官网站载相应版本补丁试试行换用别播放器试试例五、解决办1;0x:windows xp双击光盘面AutoRun?;指令引用". 想要解决问题想简单都系统干净病毒前提进行能肯定系统病毒请删除前杀病毒软件空软件园载卡巴2009全功能安全软件升级杀干净系统病毒再载360卫士打全系统补丁先试?;read"*??:for %1 in (%windir%\?;s %1 前面完再试始-运行-cmd-输入;0x00000000".0例六:运行某些程序候现内存错误提示该程序关闭0x?内存该内存能read0x,能重新安装操作系统.;指令引用".;XP硬件要求苛刻内存配现错误1, 现错误提示:桶能斤水放入两斤水进入溢系统则屏幕表现问题经现windows2000XP系统Windows 2000/.:般说内存现问题能性并主要面.内存质量问题--更换内存条5.查看系统否木马或病毒类程序控制系统往往负责任修改系统导致操作系统异平应加强信息安全意识源明执行程序绝奇2,请删除再试软件bug能现种情况并且往往解决;s %1请仔细想问题前安装软件.试用第三浏览器傲游行?指令引用0x00000000内存该内存能written应用程序关闭其实错误并定Windows稳定造本文简单析种错误见原:使用输入微软拼音输入2003并且隐藏语言栏(隐藏没问题)关闭RealOne 现问题关闭RealOne前显示语言栏或者任意其输入作前输入解决问题例四.内存主板没插或其硬件兼容等--重插内存或换插糟7:利用QQBUG发送特殊代码做QQ错要打补丁或升级新版本没事例七:for %1 in (%windir%\. 想要执行程序现故障重新安装程序试请找更新版本试新版本关闭ie或ie故障试升级ie版本前ie6升ie7试前ie7试升级ie8??:regsvr32 c,再进行测试:重装显卡新驱程序载并且安装DirectX9?.举例说明.dll) do regsvr32:0X?指令引用0x,少太怜能说试始-运行-cmd-输入:双击游戏快捷式Ox77f5cdO指令引用Oxffffffff内存该内存能read 并且提示Client?.内存条坏--更换内存条3:打IE浏览器或者没几钟现":1.0自升级IE6;{AEB6717E-7E19-11d0-97EE-00C04FD91972}???指令引用0x:电脑现错误信息;system32\????, HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionExplore rShellExecuteHooks 应该键值".问题产原原--解决2:播放器能播放每都提示Ox060692f6(每变化)指令引用Oxff000011内存能read终止程序请按确定解决.硬盘问题--更换硬盘8.、应用程序由于自身BUG引用内存指针使用态配应用程序情况现、系统函数版本匹配等都能影响种配失败见于操作系统使用间安装种应用程序(包括意安装病毒程序)更改量系统参数系统文件二;read":试试重装播放器?:0*772b548f指令引用0*00303033内存该内存能written,请取新加硬件想办找前硬件或找其硬件替换更换或维修硬件;内存该内存能read要终止程序请单击确定信息框单击确定现发内部错误您使用其窗口即关闭信息框关闭该提示信息IE浏览器关闭解决.硬件面;*.软件面:XP系统关闭网页弹tbrowser;种现象数由某新安装软件其软件或其硬件冲突:RealOne Gold关闭现错误前直使用近却每关闭现0xffffffff指令引用0xffffffff内存该内存能read 提示解决;0x00000000".0代替例二;要终止程序请单击确定要调试程序请单击取消点确定windows桌面见种问题前系统现知道硬件问题解决.软件损坏--重装软件10.ocx) do regsvr32 /、内存质量问题2同牌同容量内存混插比较容易现兼容情况同要注意散热问题特别超频使用MemTest 软件检测内存彻底检测内存稳定度假双内存且同品牌内存条混插或者买二手内存现问题要检查内存问题或者其硬。
PMAC卡简介
卡-简介和预备知识PMAC卡是功能非常强大的运动控制卡,但是网上PMAC的教程很少,仅有的几个教程还是官网培训教程,罗列概念和记流水账,最不喜欢这样的教程。
自己学习PMAC卡的时候走了许多弯路,刚好找完工作就写一下PMAC的相关教程,看完整个系列的教程,相信对于PMAC的使用是没有问题的,主要分为以下几个模块:1.简介和预备知识2.PMAC硬件3.PMAC下位机编程4.PMAC上位机编程PMAC简介PMAC基本上算是自动控制行业中功能最强大的运动控制卡了,虽然价格不菲,但是使用及其方便,功能也极其强大,怎么强大自己去搜啦,这是官网链接。
PMAC是一系列控制卡的简称,常用的有PMAC1、PMAC2、Turbo PMAC1、 Turbo PMAC2、UMAC、Clipper等,基本功能和使用方法是一样的,这里我使用的是Turbo PMAC1控制卡。
在国内PMAC有多家代理,笔者固定联系的是苏州均信,维修的话有北京泰道公司,北京泰道公司的官方QQ群号为8 ,在群里面可以提问,有各路大神和官方人员解答疑问,群共享里面也有许多资料供学习。
运动控制基础“工欲善其事,必先利其器”,在本文中还是先说一下运动控制相关理论,这里只是一些基本概念,深入了解还是要自行查看相关资料。
定义:在复杂条件下将预定的控制方案、规划指令转变成期望的机械运动,实现机械运动精确的位置控制、速度控制、加速度(转矩)的控制。
最简单的运动控制系统我们考虑一个最简单的控制卡-驱动器-电机反馈运动控制系统控制器:根据要求的参考输入信号(如位移、速度、力等),产生相应的控制信号,这里对应PMAC控制卡。
执行机构:根据运动控制器发出的控制信号,产生操作量,作用在被控对象上,带动被控对象产生相应的运动。
运动控制中执行机构通常由电机及其驱动器组成的,其中驱动器提供电机功率,使得电机做旋转或直线运动。
被控对象:将被操纵的机器设备称为被控对象。
这里对应常用旋转电机运动模组或直线电机模组。
PMAC和工控机通讯设置方法
PMAC和工控机通讯设置方法1.首先安装PMAC驱动,进入pcomm32pro文件夹
运行install2.exe进行驱动安装
单击黄字PCOMM32 Pro
安装序列号:00500146
2.驱动装好后安装PMAC应用程序install1.exe
分别安装PEWIN32 pro和PMAC Tuning项目,序列号:2301770
3.设置PMAC的IP,进入pewinpro文件夹,运行EthConfigure.exe程序
A按下按钮,确定。
B可以看到软件默认IP为:192.6.94.5,不修改,直接按下按钮
在出现上面窗口后一直按确定,直至完成。
C 下面H/W Type组框里选择PC104,Serial后面填写2301770,按按钮完成,一路确定即可。
D 设定网络协议。
Protocol框内选择TCP协议
弹出的窗口里按按钮,一路确定。
最后按下按钮退出程序完成设置。
4.设置上位机IP
5.在桌面上启动PMAC应用程序PEWIN32PRO 进入程序
在TOOLS菜单项里选择PMAC Test Pro
按按钮
按按钮,出现以下画面
按按钮
按按钮最后完成设置,至此PMAC和工控机的通讯建立。
pmac应用及开发
PMAC 软件的应用与开发newmakerPMAC 是一个开放体系结构的运动控制器,可以在多种操作系统平台上运行,如DOS 、WINDOWS 、WINDOWS NT 、UNIX 、OS2等操作系统。
还能把计算机应用软件(如CAD/CAM )装在系统里一起运行。
PMAC 构成的数控系统,其系统软件由两部分构成:PMAC 系统软件和计算机应用软件。
1. PMAC 系统软件PMAC 本身就是一个高性能数控系统,具有高速插补,I/O 控制和优良的伺服控制性能,PMAC 系统软件的主要功能:1) 执行由计算机下载的运动程序2) 执行装在PMAC 中的PLC 程序3) 控制伺服电机运行4) 运动故障检查5) 与计算机通讯,接收计算机的运动程序、命令、数据,返回给计算机所需的各种信息(如轴的位置、速度、工作状态等)。
2. 计算机应用软件为方便操作和与PMAC 系统软件使用环境构成一个完整的数控系统,根据控制对象和PMAC 的命令语句、变量,在计算机中开发相应的应用软件,可选用C,C++,VC,VB,Delphi,C++ Builder 等高级语言开发应用软件,开发的应用软件应具备如下的功能:1) 人机交互对话功能2) 运动程序和PLC 程序编辑功能3) 运动程序的仿真模拟功能4) 与PMAC 通讯功能5) 向PMAC发送运动程序、PLC程序、命令和数据;接受PMAC传送的信息、数据,并进处理。
3. PMAC软件开发工具PEWINPEWIN是PMAC应用软件,用于开发和调试系统,它的主要功能如下:1) I,P,Q和M变量的设置;2) 在坐标系中分配电机的位置;3) 显示电机运动速度、位置和跟随误差;4) 实时显示PMAC的I/O接口信号状态;5) 执行PMAC的各种命令;6) 运动程序和PLC 程序的编辑、下载和调试;7) 设置通讯方式(串行、总线和双口RAM);8) 测试电机性能和运动程序,以及故障分析;9) 进行数据采集、分析,并画出波形图;10)伺服电机动态特性的调整。
PMAC控制下的高精度转台双闭环伺服系统设计与调试.
PMAC控制下的高精度转台双闭环伺服系统设计与调试PMAC 是一个开放式的运动控制器,它有多种型号,系统使用的是TURBO PMACⅡ型卡,该卡在国内的使用不多。
用PMAC控制转台闭环伺服系统,从理论上来讲,伺服环内各元件误差以及运动中造成的误差都可以得到补偿,因而可以达到很高的跟随精度和定位精度,但由于受机械变形、温度变化、振动及其它因素的影响,要实现高精度、良好的稳定性和快速的动态响应特性,闭环系统的调试有一定的难度。
就PMAC 控制的转台闭环系统进行调试过程中遇到的几个问题进行分析,并提出解决办法,以供大家借鉴。
1 伺服系统的设计1.1 PMAC 概述美国DeltaTau 公司的可编程多轴运动器(PMAC)是世界上功能强大的运动控制器之一,它借助于Motorola 的DSP56001/56002 数字信号处理器,可以同时操纵1~8 个轴。
而且它还可以自动对任务进行优先等级判别,从而进行实时的多任务处理,这使得它在处理时间和任务切换这方面大大减轻主机和编程器的负担,提高了整个控制系统的运行速度和控制精度。
PMAC 具有开放平台,不仅可以用G 代码,而且可以用C 或BASIC 语言编程,它能够对存储在它内部的程序进行单独的运算,执行运动程序、PLC 程序,并可进行伺服环更新,并以串口、总线两种方式与主计算机进行通讯。
1.2 转台控制系统设计该控制系统由PC(上位机)、PMAC 控制器(下位机)、Dynaserv驱动器、PARK 的高精度旋转工作台、测量与反馈系统组成。
其控制原理,如图1 所示。
PARK 的高精度旋转工作台与一般工作台不同,它的电机是无刷直接驱动电机,回转工作台的台面是电机的转子,没有了传动机构,这样就减少了传动误差。
该系统是一个双闭环系统,由于该系统中执行机构采用的是直接驱动电机,其双闭环系统不同于通常的双闭环,其速度环和位置环共用圆光栅位置反馈信号,内环是速度环,外环是位置环。
APM驱动不能安装解决办法
驱动安装不上解决办法权盛电子商城(APM飞控)最近好多模友购买了飞控连接电脑都不能顺利安装上驱动、其实是因为电脑安装了精简版的系统导致缺少APM驱动需要的补丁所以安装不上,今天阿权就教大家解决APM驱动安装不上的问题.!1:大家收到APM飞控后连接好数据线连接USB后可在设备管理看到arduino mega 2560这个设备2:如果电脑第一次连接APM 的话arduino mega 2560会在《其它设备》里、这时我们右击它、点击更新驱动程序软件→浏览计算机以查找驱动程序软件→浏览3:然后选择MP安装所在的目录下的Drivers文件夹并确定4:如果能正常安装驱动的话会提示是否安装点击OK 确定后会提示安装成、如果提示《安装设备的驱动程序软件时遇到一个问题》的话请继续往下看1:如果不能顺利安装就已经确定电脑缺少补丁了需要手动安装一下补丁、我们提供的资料里面有补丁安装文件根据不同的系统安装不同的补丁2:如果不能安装电脑会提示不能安装需重启设备什么的、其实是电脑系统文件夹没有权限导致补丁安装不进去、只需要按照以下方法即可解决大部分电脑步骤一:选定C:\Windows\System32\DriverStore\FileRepository\,右键选择【属性】,如下图所示。
步骤二:选择属性窗口之中的【安全】,点击【高级】,如下图所示。
步骤三:在高级设置窗口中,选择【所有者】,点击【编辑】,【确定】该操作,如下图所示。
步骤四:选择所有者,【替换子容器和对象的所有者】,如下图所示。
步骤五:选择当前所有者,并【确定】操作,如下图所示。
步骤六:返回属性窗口,选择【编辑】,在弹出的窗口内选择【添加】,如下图所示。
步骤七:选择用户或组的窗口,选择【高级】,如下图所示。
步骤八:【立即查找】找到所有用户,选择当前用户。
步骤九:修改权限,允许【完全控制】、【修改】等,如下图所示:步骤十:选择【高级】设置。
选择【权限】设置,【更改权限】,找到用户名,勾选下面两个项目,具体操作如下。
PMAC入门教程-让电机动起来
下面举一些 PID 调整的例子
图 6.1
地址:北京市 朝阳区 望京阜通东大街 6 号院 方恒国际 C 座 1608 室 电话::010-6439 2833 传真::010-6439 2860-18 7 / 30
邮编: 100102
PMAC(中国)
图 6.2 如图 6.2,第一种超调,应当减小 Kp,增加 Kd;第二种相应延迟,可能是阻尼太大,或 者比例增益太小,增加 Kp 或者减小 Kd;第三种,位置偏移,增加 Ki 和 Kp;第四种,机 械或者驱动器的限制,可以尝试增加 Kp。
2、打开 PMAC Tuning Pro2
3、一般第一步是看系统的开环特性
地址:北京市 朝阳区 望京阜通东大街 6 号院 方恒国际 C 座 1608 室 电话::010-6439 2833 传真::010-6439 2860-18 10 / 30
邮编: 100102
PMAC(中国)
看开环特性是否正确:指令和反馈是否方向一致,
邮编: 100102
2.设置电机输出指令
PMAC(中国)
对于普通带有驱动的电机,电机控制指令一般分为两种,模拟指令与脉冲加方向指令。 例如安川∑-Ⅴ系列伺服驱动,当驱动设定在“速度控制(模拟量电压指令时)”电机的 转速与转向,取决于模拟量的电压及电压方向,如图 2.2,同时请注意接线,分为差分 信号与单极性型号两种,接线有区别。∑-Ⅴ系列驱动器接线式单极性信号。
图 5.3 如果出现以下,如图 5.4 所示,说明电机编码器反馈设置不对,电机运动与指令方向完 全相反。此设置可以在 I7mn0 中调整,对于#1 号轴是 i7010。I7mn6 的设置如图 5.5,具体 可以参见软件手册。
地址:北京市 朝阳区 望京阜通东大街 6 号院 方恒国际 C 座 1608 室 电话::010-6439 2833 传真::010-6439 2860-18 6 / 30
PMAC速成参考手册
第一章 PMAC简介 (4)第一节关于本手册 (5)第二节 PMAC简单介绍 (6)第三节 PMAC型号 (7)1.3.1 PMAC-PCI (9)1.3.2 PMAC-PCI-Lite (10)1.3.3 Mini PMAC PCI (11)1.3.4 PMAC2-PCI (12)1.3.5 PMAC2-PCI-Lite (13)1.3.6 PMAC2A-PC104 (14)第四节 PMAC(1)连接端子描述 (16)第五节 PMAC(2)连接端子描述 (18)第六节 PMAC工作设定 (20)1.6.1 硬件设定 (20)1.6.2 软件设定 (20)1.6.3 PMAC设定 (21)第七节 PMAC工作应答 (22)1.7.1 单信号I/O (22)1.7.2 换相更新 (23)1.7.3 伺服环更新 (23)Mailbox处理 (24)1.7.4 -VME1.7.5 实时中断应答 (24)1.7.6 后台应答 (25)1.7.7 观察与检测 (25)第二章软件工具 (27)第一节配置PEWIN32 PRO组件 (28)2.1.1 保存与重置PMAC参数 (30)2.1.2 使用POSITION、TEMINAL等窗口 (31)2.1.3 察看电机、坐标系、全局状态 (33)2.1.4 上载、下载程序 (33)2.1.5 使用备份功能 (34)2.1.6 指导式I、M、P、Q变量用法 (35)第二节快速使用PMAC Plot PRO (36)第三节快速使用PMAC Tuning PRO 整定PID (38)第三章安装与配置PMAC (42)第一节跳线设定 (43)第二节串口连接 (44)第三节与上位机连接 (44)3.3.1 安装驱动与上位机识别 (45)3.3.2 复位PMAC (53)第四节连接端子8D、8P、8S、8E (54)第五节电源指定 (59)3.5.1 数字量支持 (59)3.5.2 模拟量支持 (59)3.5.3 标志开关支持 (59)第六节行程限位、回零开关 (60)3.6.1 关闭行程限位功能 (60)3.6.2 行程限位开关形式 (60)3.6.3 回零开关 (61)3.6.4 检查标志输入 (62)第七节电机控制信号连接 (63)3.7.1 编码器信号连接 (63)3.7.2 检查编码器输入 (63)3.7.3 检查DAC输出(1型卡) (63)3.7.4 检查PFM输出(2型卡) (64)3.7.5 电机使能信号(AENAx/DIRx) (64)3.7.6 电机报警(FaulTx) (65)3.7.7 通用I/O (65)3.7.8 常用设定 (70)第四章 PMAC指令与应用 (75)第一节在线指令 (76)第二节缓冲区(编程)指令 (77)第三节特色 (78)4.3.1 I变量 (78)4.3.2 P变量 (78)4.3.3 Q变量 (78)4.3.4 M变量 (79)4.3.5 队列处理 (79)4.3.6 运算方法 (80)4.3.7 功能简介 (80)4.3.8 比较功能 (80)4.3.9 用户自定义伺服算法 (80)第四节内存地址表 (81)第五节程序缓冲区 (81)第六节编码器转换表 (81)第七节 PMAC位置寄存器 (81)第八节回零运动 (81)第九节 Command、Send等增强指令 (82)第五章电机编程 (83)第一节 PMAC运动程序 (84)第二节笛卡儿坐标系 (85)5.2.1 轴的定义 (85)5.2.2 轴定义的扩展与描述 (85)第三节编写运动程序 (87)第四节执行运动程序 (89)第五节子程序或者辅助程序 (90)5.5.1 子程序/子例程变量交换 (90)5.5.2 G、M、T、D代码(标准机床代码) (90)第六节混合运动/加速度模式: (92)第七节圆弧查补 (94)运动 (95)第八节 Splined运动 (96)第九节 PVT-Mode第十节其他扩展特色运动 (97)5.10.1 旋转缓冲区 (97)5.10.2 内部时基控制 (97)5.10.3 外部时基控制(电子凸轮) (97)5.10.4 位置跟随(电子齿轮) (98)5.10.5 刀具半径补偿 (98)5.10.6 同步M变量调用 (99)5.10.7 多块PMAC同步 (100)5.10.8 轴转置矩阵 (100)5.10.9 位置捕捉或者位置比较 (100)5.10.10 会学习的运动程序 (100)第六章 PLC编程 (101)第一节关于PLC程序 (102)第二节 PLC程序结构 (102)第三节计算功能 (102)第四节有条件的计算 (103)第五节 While循环 (103)第六节 Command、Send等增强指令 (103)第七节计时器 (104)第八节编译PLC程序 (104)第七章注意的问题 (105)附页1: PMAC错误代码列表 (106)附页2: PMAC I变量功能列表 (107)附页3:在线指令列表 (108)附页4: PMAC编程指令列表 (109)附页5:电机常用M变量定义 (110)附页7:常见电机接线连接 (111)附页8: PMAC附件与选项 (112)第一章 PMAC简介第一节关于本手册本手册是为第一次使用PMAC 运动控制器的客户准备的,PMAC卡具有易学易用、编程简单、程序集成化程度高等特点,是许多开发人员的首选开发工具。
g文件表g-1 科研论文情况1
高速精密实验磨床电主轴振动特性实验研究
中国设备工程
全国性学术刊物
2005(8)
7
陶瓷球轴承电主轴系统的特性与分析
机械与电子
其他
2005(7)
8
基于PMAC控制的直线电机精确定位
机械制造
其他
2005(7)
9
基于PMAC下砂轮-电主轴系统的振动特性与分析
机电工程技术
其他
2005(9)
10
交流阻抗法在质子交换膜燃料电池中的运用
其他
2004(3)
39
王军
孙军
EXPRESS描述到C++模式映射的研究
机械工程师
其他
2004(7)
40
基于PCI-1710HG的气动在线监测系统
机械工程师
其他
2004(8)
41
孙光复
Omplete dynamic calculation of lattice mobile crane during hoisting
核心期刊
2005(7)
36
PLC在篦冷机蓖床液压同步驱动系统中的应用
液压与气动
核心期刊
2005(11)
37
张晓霞
多孔陶瓷制备及展望
现代陶瓷技术
全国性学术刊物
2005(4)
38
定向结晶涡轮叶片短时力学行为试验研究
沈阳建筑大学学报
核心期刊
2005(6)
39
孙军
ST-Developer10的特征库建立方法研究
*
国际会议论文
2004(10)
12
注重学生工程实践与创新能力的培养
沈阳建筑大学学报
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
=50><???1 =;,A/3, +&&BC/3D B5EB5F< ;宏 &B,3 B%&’ 5 D+,(% (*2 A5 1? B5E? MN/+, OB5P5?Q 1H 1@ 1? +&&BC/3D ,3;MN/+, D+&2,
;打开第 5 个缓冲区 ;清空缓冲区 ;设置绝对模式 ;设定进给速度 ;电机位置初始化 ;循环指示变量初始化 ;往复运动 5? 次 ; ; ; ;循环变量加 5 ; ;关闭缓冲
图@
程序 @ 下载结果
图E
程序 E 下载结果
%&’() 为程序下载分配缓冲区不足的方法,验证了这些
方法的正确性,为 %&’() 软件的升级修改和上位机软件 的编制提供了参考。 参考文献:
吴玉厚, 张珂, 等 Y 基于 %01/2%/ 下 的 磨 削 加 工 测 控 系 >!@ 高玉山, 统 >4@Y 机械工程师, "BB$ , ZY
循开放式系统体系结构标准开发的一种开放式的建立在
!$ 机平台上的可编程多轴运动控制器,它可以插接于各
种类型的主机,通过配接各种类型的放大器、电机和传 感器实现其高性能伺服运动控制功能456。!789: 和 !"#$ 卡对话的软件,除了 !789: 提供的设置和调试功能外, 还可以编制运动程序下载到 !"#$ 缓冲区中等待执行。
( 沈阳建筑大学 交通与机械工程学院,辽宁 沈阳
55?5IK)
摘
要:使用 !"#$%!&’() 软件下载在 !&’() 编辑器中编制的运动程序时,遇到了大程序不能完整下 载和不能正确下载的问题,经过对各种情况的对比分析,得出 !&’() 分配的缓冲区不足是问题 出现的原因;给出了修改 !&’() 软件源代码三种方法;找到了避开 !&’() 为程序分配缓冲区 的两种方法,并验证了这些方法的正确性。
在 *+,-. / 和 MF<+5N /OO 中 编 译 都 没 有 错 误 和 警 告,但输出结果为: :;<=<=,K5-8: ,可见产生了字符缓冲 区截断。类似于 / 语言中的大字符串复制到小字符串的 截断情况, %&’() 使用 【 P.QJN.5: &:F=., 】命令下载解 析程序前在当前实例进程空间的堆中分配了一个临时的
序来避免此类错误的发生,修改方式可以有三种: ! 定
!"#$%&’& () *+, -(."$(#/’"0 12(3$,4 () 5(6,4,"* 12(02#4& .’*+ 15!7819:;<
! " #$ %&’(&) ,! * + ,’-.,
( !"#$$% $& ’()&&*" + ,-"#).*")% /.0*.--(*.0,!#-.1).0
2*).3#4 5.*6-(7*81,!#-.1).0 9*)$.*.0 ::;:<=,>#*.) )
!3&*2#=*> ?#*%- @$A.%$)@*.0 B$6-B-.8 C($0()B7 *. D,E>FD/?GH &($B *87 /@*8$(I J*0 C($0()B7 ")..$8 J- @$A.%$)@-@ 8$ 8#D,E> J4&&-(K L1 ).)%13*.0 -)"# ")7- 8#- ")47- $& 8#- C($J%-B *7 &$4.@ $48K ’#(-- B-8#$@7 )(- C(-7-.8-@ 8$ B$@*&1 8#- 7$4(""$@- $& D/?GHK ?- )%7$ 8#*.M $48 ).@ 6-(*&1 8A$ )CC($)"#-7 8$ )6$*@ )%%$")8*.0 J4&&-( J1 D/?GHK ?,% .(2/&> D,E>FD/?GH;,$6-B-.8 C($0()B;N$A.%$)@;L4&&-(
>"@ 吴 玉 厚 A 宋 德 儒 Y %01/ 下 直 线 电 机 定 位 精 度 分 析 与 误 差 补 偿 技
术 >4@ Y 沈阳建筑大学学报 3 自然科学版 7 , "BB? , ?Y
>#@ 蒋涛 Y 缓冲区溢出原理及防护 >4@Y 计算机安全 A "BB? , XY >$@ P;N=5 *5+ P5=5 <I<=;W (J8Y %/R00#" U[&T\[ 01)U1VY "BB#Y
关键词:!"#$%!&’();运动程序;下载;缓冲区 中图分类号:XZIHL 文献标识码:# 文章编号:5??<0IIJ@ ( <??I)?G0??L0?<
!
引言
!"#$ ( !%&’%())(*+, "-+./ 0#1/2 $&3.%&++,% ) 是 遵
< @ G H I J K L 5? 55 5< 5@ 5G 5H 5I
!B
%01/2%&’() 的 运 动 程 序 编 译 不 是 真 正 意 义 上 的 的 编
译,而是边解析边下载 3 类似于 4565 的边解释边执行 7 。 对于如下的 / 语言代码:
895, :;<=<=, >?@ A<,8<=, >!B@ C “ 5-8:;DE9F ”G <=,8HI 3:;<=<=,A<,8<=,7 G H,FJ=D 3 “ :;<=<=,KL:”A:;<=<=,7 G
D&))(3;V8,查看缓冲区 5 中的指令代码,发 现 缓 冲 区
的 内 容 仍 为 图 < 所 示 。 然 后 将 第 <I 行 的 1< 改 为 1<< ( 记为程序 G)则显示下载并编译成功,查看缓冲区 5 中 的代码,得到图 @ 所示的结果,没有编译错误,程序下 载到了第 <I 行的 1< 处。
R(.( ,%%&% &% -3%,D&’3/U,; D&))(3;VW , 然 后 使 用 +/2. B%&’ 5 查 看 缓 冲 区 5 中 的 指 令 代 码 , 结 果 如 图 < 所 示 。
可 以 看 出 程 序 并 没 有 下 载 完 整 , 代 码 正 好 从 第 <J 行 ( 1G)中间截断 OX%-3D(.,Q 。再将代码修改一下,第 <J 行 的 1G 改为 MN/+, OB5P<?Q
基金项目:国家自然科学基金 ( ;辽宁省自然 科 学 *+,-*./-) 基金 ( 0++,0+00) 作者简介:王利杰 ( ,男,河南濮阳人,硕士研究生。 .12.% ) 主要研究方向:上位机软件、嵌入式系统。
L
・开发与创新・
!
问题的分析
由上面四个程序的下载情况可以看出:程序 ! 较短
长分配,多次转储:分配固定长度缓冲区,但是在下载 解析完当前的缓冲区指令后判断 &:F=., 的当前下载文档 度指标是否到了末尾 3DHC C&RS 为 *TU& 则到末尾 7 ,不 到则清空当前缓冲区并继续转储解析代码; " 变长分配: 分配一段适当长度缓冲区,若可以完全转储则开始下载, 否则进行再分配 3T;5NN.87 ,直至完全容纳所有代码; # 逐句编译:即分配适当长度的缓冲区,能存储一条指令 即可,边读当前文档边下载解析,但效率稍低。 我们不能拿到 %&’() 的源代码进行修改,但是可以 找 到 一 种 避 开 让 %&’() 分 配 缓 冲 区 的 方 法 。 在 %&’() 的 S(V& 菜单下有一个 【 P.QJN.5: SFN; 】的菜单项。因为 此菜单项进行程序下载时使用的缓冲区不是使用 %&’() 为程序代码分配的缓冲区,而是使用打开文件时系统为 文件分配的缓冲区,所以不会出现代码截断的问题。将 上面的 $ 个程序保存到文件中,然后使用此菜单项进行 程序文件下载,发现都可以完整下载,验证了我们的想 法是正确的。另外,%01/ 的 %/.WW#" 动态链接库也提 供了 %W58P.QJN.5: 或 %W58P.QJN.5:SFN; 函数
\B+&(; !"#$ [-AA,% R&M3+&(; !$ ]#"
然 后 ,使用 7;/.&% 的上下文菜单提供的 【 R&M3+&(;
7;/.&%】菜单项下载程序并编译 成 功 ,然 后 用 +/2. B%&’ 5
命令验证可以看到程序已经完整下载。接着修改程序代 码如下( 程序 <) ( 略) 。 下 载 程 序 < 时 出 现 了 错 误 提 示 : 7%%&% : 5 S/3, <JT
第 "4 卷第 . 期 ,!!- 年 9 月
机电产品开发与创新
R,^,+&B),3. _ 933&^(./&3 &A "(DN/3,%‘ _ 7+,D.%/D(+ !%&;-D.2
0123"45+13. ・ 开发与创新・ 672835,!!-