欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于多线程技术的PLC与PC的通讯方式.docx

    • 资源ID:17776332       资源大小:19.08KB        全文页数:7页
    • 资源格式: DOCX        下载积分:15.18金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15.18金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于多线程技术的PLC与PC的通讯方式.docx

    基于多线程技术的PLC与PC的通讯方式网络转载导语:在当代工业控制系统中,PLC以其高可靠性、适应工业经过现场、强大的联网功能等特点,被广泛应用。可实现顺序控制、PID回路调节、高速数据收集分析、计算机上位治理,是实现机电一体化的重要手段和开展方向。引言在当代工业控制系统中,以其高可靠性、适应工业经过现场、强大的联网功能等特点,被广泛应用。可实现顺序控制、PID回路调节、高速数据收集分析、计算机上位治理,是实现机电一体化的重要手段和开展方向。但PLC无法单独构成完好的控制系统,无法进展复杂的运算和显示各种实时控制图表和曲线,无良好的用户界面,不便于监控。将个人计算机(PC)与PLC结合起来使用,可以使二者上风互补,充分利用个人计算机强大的人机接口功能、丰富的应用软件和低廉的价格上风,组成高性能价格比的控制系统。1.系统构成推进系统中,PC机选用工控计算机。它是整个控制系统的核心,是上位机。其主要利用良好的图形用户界面,显示从PLC接收的开关量和控制手柄的位置,进展一些较复杂的数据运算,并且向PLC发出控制指令。PLC是该系统的下位机,负责现场高速数据收集(控制手柄的位置),实现逻辑、定时、计数、PID调节等功能,通过串行通讯口向PC机传送PLC工作状态及有关数据,同时从PC机承受指令,向蜂鸣器、指示灯、滑油泵、控制手柄的位置等发出命令,实现PC机对控制系统的治理,进步了PLC的控制才能和控制范围,使整个系统成为集散控制系统。2.通讯协议计算机与PLC之间的通讯是建立在以RS232标准为根底的异步双向通讯上的,FX系列PLC有其特定的通讯格式,整个通讯系统采用上位机主动的通讯方式,PLC内部不需要编写专门的通讯程序,只要把数据存放在相应的数据存放器中即可,每个数据存放器都有相应的物理通讯地址,通讯时计算机直接对物理通讯地址进展操纵。通讯经过中,传输字符和命令字以ASC码为准,常用的字符及其ASC码对应关系。计算机与PLC进展通讯时,计算机与PLC之间是以帧为单位进展信息交换的,其中控制字符ENQ、ACK、NAK,可以构成单字符帧发送和承受,其余的信息帧发送和承受时都是由字符STX、命令字、数据、字符ETX以及和校验5局部组成。校验和在信息帧的尾部用来判定传输的正确与否,和校验码的计算方法是将命令码到ETX之间的所有字符的ASC码(十六进制数)相加,取所得和的最低2位数,在后面的通讯程序设计里面还会提到。进展过失检验的方法很多,常用的有奇偶校验码,程度垂直冗余校验LRC,目前广泛使用的是CRC校验码,它能查处99%以上18位或者更长的突出错误,而在计算机与PLC点对点的短间隔通讯时,出错的几率较小,因此采用校验和法,根本能知足要求。3.多线程技术及在VC+串口通讯程序中的实现在Windows的一个进程内,包含一个或者多个线程,每个线程分享所有的进程资源,包括翻开的文件、信号标识及动态分配的内存等等。一个进程内的所有线程使用同一个32位地址空间,而这些线程的执行由系统调度程序控制,调度程序决定哪个线程可执行和什么时候执行线程。线程有优先级别,优先权较低的线程必须等到优先权较高的线程执行完任务后再执行。在多处理器的机器上,调度程序可以把多个线程放到不同的处理器上运行,这样可以使处理器的任务平衡,也进步系统的运行效率。Windows内部的抢先调度程序在活动的线程之间分配CPU时间,Windows区分两种不同类型的线程,一种是用户界面线程(UserInterfaceThread),它包含消息循环或者消息泵,用于处理接收到的消息;另一种是工作线程(WorkThread)它没有消息循环,用于执行后台任务、监视串口事件的线程即为工作线程。本系统采用MFC编程方法,MFC是把串口作为文件设备来处理的,它用CreateFile()翻开串口,并获得一个串口句柄,用SetCommState()进展端口配置,包括缓冲区设置,超时设置和数据格式等。然后调用函数ReadFile()和WriteFile()进展数据的读写,用WaitForSingleObject()监视通讯事件。在用ReadFile()和WriteFile()读写串口时,一般采用重叠方式。由于同步I/O方式是当程序执行完毕才返回,这样会阻塞其他线程,降低程序执行效率。而重叠方式能使调用的函数立即返回,I/O操纵在后台进展,这样线程就可以处理其他事务,同时也实现了线程在同一串口句柄上实现读写操纵。使用重叠I/O方式时,线程要创立OVERLAPPED构造供读写函数使用,该构造最重要的成员是hEvent事件句柄。它将作为线程的同步对象使用,读写函数完成时hEvent处于有信号状态,表示可进展读写操纵;读写函数未完成时,hEvent被置为无信号。利用Windows的多线程技术,在辅助线程中监视串口,有数据到达时依靠事件驱动,读入数据并向主线程报告;并且,依靠重叠读写操纵,让串口读写操纵在后台运行。4.上位计算机通讯程序设计以读取PLC输出线圈Y0为首的2个字节的数据为例,编写一个通讯程序。查PLC软元件地址表可知,输出线圈Y0的首地址为00A0H,2个字节的数据即为Y0-Y7和Y10-Y17,根据返回的数据,就可以知道PLC此时的状态,以实现对PLC的监控。在每一次读操纵之前,先要进展握手联络。对PLC发恳求讯号ENQ,然后读PLC的响应讯号。假如读到的响应讯号为ACK,那么表示PLC已预备停当,等待接收通讯数据。BOOLCPlcComDlg:ReadFromPLC(char*Read_char,char*Read_address,intRead_bytes)CSerialSerial;/用于串行通讯的类if(Serial.Open(1)/初始化串行通讯口COM1Serial.SendData(ENQ_request,1);/发送联络讯号Sleep(20);/等待20ms秒Serial.ReadData(read_BUFFER,1);/读取PLC响应讯号if(read_BUFFER=ACK)Serial.SendData(STX_start,1);/向PLC发送“开场标志代码Serial.SendData(CMD0_read,1);/发送“读命令代码datasum_check+=CMD0_read;for(i=0;i4;i+)Serial.SendData(Read_addressi,1);/发送起始元件地址的ASC代码Serial.SendData(ETX_end,1);/发送完毕标志代码Change_to_ASCII(senddatasum_CHECK,datasum_check);/将“和转化成ASC代码Sleep(40);/等待PLC的反响Serial.ReadData(Read_chari,1);/读Read_bytes个字节if(*readdatasum_CHECK=*readdatasum_check)/“和效验AfxMessageBox(“数据读取成功!);returnTRUE;elseAfxMessageBox(“校验错误!);returnFALSE;5.完毕语本文作者创新点:笔者提出了一种基于多线程的PC机与PLC的通讯,该通讯程序采用VC比用VB具有更好的实时性;并采用MFC编程方法用重叠构造读写串口,使串口读写在后台进展。该通讯程序可靠、可移植性好。本通讯程序作为该系统的一个重要组成局部,经现场调试证实,既简单又实用,具有很好的实用价值。同时,该系统具有直观的人机界面和方便的操纵方式,具有广阔的应用前景。

    注意事项

    本文(基于多线程技术的PLC与PC的通讯方式.docx)为本站会员(安***)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

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

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开