数控加工信息获取操作面板设计

上传人:jin****ng 文档编号:88477687 上传时间:2022-05-11 格式:DOC 页数:7 大小:54KB
收藏 版权申诉 举报 下载
数控加工信息获取操作面板设计_第1页
第1页 / 共7页
数控加工信息获取操作面板设计_第2页
第2页 / 共7页
数控加工信息获取操作面板设计_第3页
第3页 / 共7页
资源描述:

《数控加工信息获取操作面板设计》由会员分享,可在线阅读,更多相关《数控加工信息获取操作面板设计(7页珍藏版)》请在装配图网上搜索。

1、数控加工信息获取操作面板设计操作面扳的设计是要提供给操作者以简单、方便的用户界面使擾作者能轻松的下达指令,获取所潘信息.数控加工信息获取操作面板的设计总的来讲分为三步:建立PC与PLCZ间的通信连搂、根据用户要求下达描令、收到PLC返回信息并对这些数据宿息进行整理分析.上位机PC与数控系统的通倍是建立在上位机PC与数控系统PLC的基础上的。S7-2O0PLC的自由瑞口为RSJ&5,PC的接口是RS-232接口,因此要建立两者之间的通惨PC的RS-232接口必须经过RS-232.KS85转换器来和PLC通信端口连接*连接可以采用双绞线或电缆线.但是”一般情况下,使用西门子提供的带有RS232/R

2、S485转換器的POPPJ电郭无需增加其它硬件,PC与PLC即可方便连接“在这种通信方式下,用户可以设定通信协议,用户程序也完全能够控制通信端口上位机与PLC间的通倩是主从关系,上位机一直占有主导地位.PC可以采用VisualBasic程语言,也可直接采用西门子专业的组态软件.VisualBasic是一般程序设计人员在Wind。邸坏境中咼常用的串口编程语音Z.采用VisualBasic开发串口通信程库的方式主要有两种:调用WindowsAPI函数和使用MSCOMM串口控件在本文中上位机PC用VisualBasic編程.便用MSCOMM控件进行通信Visual8序设计的基本原理:首先串口初始化,

3、设定通信端口*通值参数等,确定需要读取PLC存储器的地址与类型,将上位机发出的字符串写入输出存储器中,发送给PLC,PLC响应后*上位机PC再次发出确认信息,这时就能够收到PLC返回来的包含指定地址中的所需JS据.这一串报文中的某一个或几个字节才是指定地址中的内容,也就退真正需要的内容因此*需要对这一字符串经过分析处理才能获得指定的数据.4.1设畫串口参数上位机在Windows环境下,釆用VisualBasic下的MSComm控件*MSComm控件的全称为MicrosoftCommuiucationControb是Microsoft公司提供的ActiveX控件.目的是为了简化Wind。卿下串口

4、通信编程,它不但能用来提供简单的串行通信功能,还能用来创建事件驱动的、功能完备的高级通信工具.串口通信控件(MSConnn主要通过审口传轨与接受数据,为应用程序与外设之何提供串行通信功能,只需监视控件的属性利事件,即可实现串口通信。MSComm控件提供两种处理通信的方法,便用的每个MSComm控件都对应着一个串口使用MSComm控件前需要初始化,这个步骤通常長设置通信端口号、校验位、数据位.停止位和波特率的,其数据必须和数控机床的设置一致才能通信.表4.1HSCown控件的常用属性)FofMSCommControl属性作用属性作用CommPort设置或返回通信端口号Settings设置或返回通

5、信參数Input返回并删除接收缓冲区中的数据流Handshaking设置或返回硬件握手协议Inputlen设置并返回Input属性从接收缓冲区读取的字符数RThreshouldOnComm事件发生之前,设置并返回接收缓冲区可接收的字符数InputMode设置或返回接收数据的数据类型SThreshouldOnComm事件发生之前,设賈并返回接收缓冲区中允许的最小字符数OutPut向传输缓冲区写数据流OutBufiferSize设置或返回传输缓冲区的字节数PortOpen设置或返回通信端口的状态InBufferSize设置或返回接收缓冲区大小以下为部分代码:PrivateSubForm_Load(

6、)MSComm1.CommPort=1(设定端口号)MSComml.Settings=9600,e,8,1(设定通讯波特率)MSCommLlnputLen=0(表示使用MSComm控件读取接受缓冲区中的全部内容)MSComml.RThreshold28(在设置CommEvent为ComEvreceive并产生OnComm之前,设置并返回要接收的字符数为28)MSComml.InputMode-comlnputModeBinary(设置Input属性取回的数据的类型)MSComml.PortOpen=TrueEndSub4.2VisualBasic编程实现报文获取在前面分析了PPI协议的基础上,

7、上位机采用VisualBasic按照PPI协议的格式给PLC发送报文,吿知PLC需要读取的数据的存储器地址和类型.根据上章的PLC程序,加工进度数据的值存入VW14000012;加工零件计数的值存入VW14000016中;主轴加工时间分钟数据值存入VD14000036中,秒数据值存入VD14000040中;上电时间分钟数据值存入VD14000024中,秒数据值存入VD14000028中.读取数据的指令是根据控制面板上的命令按钮控件控制的。以下为部分代码:DimlcixingAsStringDimxxAsStringBle27:存储器类型DinhaAsString读取数据的个数DimdizhiA

8、sString存储器地址Dinistr_read(0To32)AsByte定义读取的数据是以字节为元素的数组DimIAsIntegerDimTemp_FCSAsVariantDimstr_val(0To5)AsBytedizhi=Text2.Textleixing=Text1.TextIfleixing-VisualBasicThenxx=&H84ha=&HlEndIfIfleixingvwThenxx=&H84ha=&H2EndIfIfleixing=vdThenxx=&HS4ha=&H4EndIfstr_Tead(O)*&H68strjead(l)=&HlBstr_read(2)=&H1B

9、str_read(3)=&H68str_read(4)=&H2str_read(5)&H0str_read(6)&H7Cstr_read(7)=&H32str_read(8)&H1str_read(9)*&H0str_read(10)=&H0str_read(ll)&H0str_read(12)=&H0str_read(13)&H0str_read(14)=&HEstr_read(l5)=&H0str_read(16)w&H0strread(17)=&H4strjcadUS)15&H1str_read(19)=&H12str_read(20)=&HAstr_read(21)=&H10strre

10、ad(22)=&H4str_read(23)=&H0str_read(24)=hastr_read(25)=&H5str_read(26)&H78str_read(27)=xxstr_read(28)=&H0str_read(2刃=(Str(dizhi)8)256str_read(30)=(Str(dizhi)8)Mod256ForI=4To30求和Temp_FCS=TempFCS+str_read(I)NextIstr_read(31)=Temp_FCSMod2561计算校验码str_read(32)&H】6MSComml.Output-strread*向发送缓冲区写入数据Text4.Tex

11、tSleep(50)等0.05秒,当PLC返回信息后再次发送如下信息strval(O)&H10str_al=&H2str_val(2)=&H0str_valG)=&H5Cstr_val(4)=&H5Estr_val=&H16MSComml.Output=strvalEndSub当点击不同功能按钮,向PLC发送指另后,相应的,PC会得到一串PLC返回的报文.以读取VW14000008为例:发送的报文为:PLC收到后返回E5,表示确认.这时上位机再次发送10205C5E16PC收到数据1FT4010046316.4.3报文数据处理得到的报文是一长串字符串,而需要的内容仅仅是其中的一个或两个,因此,

12、需要对报文数据进行处理.对于用到的字符串函数,做简单介绍.UBound函数与LBound函数一起使用,用来确定一个数组的大小.Split函数:返回一个下标从零开始的一维数组,它包含指定数目的子字符串.Len函数:返回Long,其中包含字符串内字符的数目,或是存储一变量所需的字节数Mid函数:返回Variant(String),其中包含字符串中指定数量的字符.Vai函数:返回包含于字符串内的数字,字符串中赴一个适当类型的数值。在数据接收程序中,利用VB里的MSComm控件,一次接收缓冲区中的所有数据.将这些数据存放到数组形式的暂存单元中,之后再分析每个元素的值,这样就能得到读写的数据.以下为部分

13、代码:PrivateSubMSComml_OnComm0收到字符或传输线发生变化时就会产生此串口事件Dimrcv_arrayOAsByteDimdis_arrayAsStringDimrcvjenAsLongDimleixingAsStringDimaOAsStringDimbAsStringDimdAsStringDimleixingAsStringleixing=Textl.TextSelectCaseMSComml.CommEventCase2rcvanayMSComml.Input*从接收缓冲区读取数据rcvlen=UBoimdCrcvarray)ReDimtemP(0ToUBound

14、(rcv_array)ForIs0Torcvjendis_array=dis_array&Hex(rcv_array(I)&NextIText4.Text=dis_arrayIfleixing=RvwnThenaO=Split(dis_array,MFF)截取一段以“FF”开始的报文bSp!it(a(1),T6”X0)在上一个语句的基础上截取以“16”结束的字符串IfLen(b)=10Thend=Mid(b,5,2)如果所截取的字符串的长度是10,则取出其中从第5个字符开始的2个字符EndIfIfLen(b)=11Thend=Mid(b,5,3)如果所截取的字符串的长度是11,则取出其中从第5

15、个字符开始的3个字符EndIfText3.Text=dEndIfEndSelectEndSub通过以上代码即可取出需要的数据。同样以上面PC收到数据68171768028323000002060041FF4010046316为例。收到的这串报文中并不是所有的帮是有用的,只有倒数第三位的“4”是需要的数据,表示数控程序加工到了4行.4.4程序主要功能的实现方法开机时间日志建立本功能主要是实现记录毎天机床开机时闾和运行时间,当机床完成加工后,按下“保存运行时间”按钮,即可记录当天机床开机时间和运行时间于一个txt文件中,为机床使用情况的了解提供依据.部分代码如下:PrivateSubCommand

16、14_ClickODimMsg,Style,Title,Help,Ctxt,Response,MyStringMsg=”记录今天的工作时间?定义信息.Style35VisualBasicYesNo+VisualBasicCritical+VisualBasicDefaultButton2定义按钮.Tide-数控加工信息釆集”定义标题.CtxtlOOO,定义标题上下文.*显示信息ResponseMsgBox(MsgStyle,Title,Help,Ctxt)IfResponse=VisualBasicYesThen*用户按下是”Open”D:时间日志.txtForAppendAs#1Write#

17、1,Label15.Caption;开机时间:,Text5Text;时Text6.Text;分Write#1,Label15.Caption;运行时间:,Textl2.Text;”时TextB.Text;分*Close*完成某操作.Else1用户按下“否”EndIfEndSub编辑数控代码作为对数控加工进度的监视,数控代码中添加自定义M94,M95代码是其基础.需要在第一行的数控代码后添加M94,在其后的每一行数控代码后添加M95.这一过程用手工完成是非常麻烦的因此,特意设置一个“编辑数控代码”按钮完成此功能。代码如下:PrivateSubCommand4_ClickODimaDimnDimI

18、IfLefURichTextBoxLText,1)o”NTThenIfRight(RichTcxtBoxl.TextIfRight(RichTcxtBoxl.Text1)=VisualBasicCrLfThenn=0Elsen=-lVisualBasicCrLf)a二Split(RichTextBoxl.TextiWithRichTcxtBoxlText=a(0)&VisualBasicCrLf&a(l)&VisualBasicCrLf&a(2)&”M94”&VisualBasicCrLfForI=3ToUBound(a)+n-3.SelStart=Len(.Text)SelText=a(T)&”&”M95”&VisualBasicCrLfNextI.SelStart=Len(.Text).SelText=a(UBound(a)3)&VisualBasicCrLf&a(UBound(a)2)&VisualBasicCrLf&a(UBound(a)1)&VisualBasicCrLf&a(UBound(a)&VisualBasicCrLfEndWithEndIfEndSub

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!