资源描述:
《本科毕业论文-基于can总线控制的温度仪表》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、摘要随着科学技术的快速发展,工业控制和生产自动化技术的不断进步以及微处理器的广泛应用,现场总线技术日益成为国内外各个行业的关注焦点。传统的独立仪表已经不能满足目前控制系统大规模化、智能化、网络化方向发展的要求,一种新型的基于现场总线的智能仪表应运而生。CAN(ControllerAreaNetwork)现场总线作为一种自效支持分布式控制和实时控制的技术,以其稳定性好、可靠性高、抗干扰能力强、通讯速率快、维护成本低及其独特的设计,现己经成为国际上应用最为广泛的现场总线之一。本课题采用主流单片机STC89C52为微处理器,结合独
2、立CAN控制器SJA1000设计了CAN总线的数据通信系统硬件电路,使CAN总线的通讯更加直观。本文提出了相应的通信软件模型,通信软件模型包括应用层协议模块、基本通信模块和运动控制应用模块。其中,应用层协议模块包括消息标识符的分配、数据域信息格式、数据交换方式和报文滤波机制等内容;基本通信模块包括CAN控制器的初始化、报文接收、报文发送、错误处理和中断服务程序等内容;运动控制应用模块包括输出控制命令和输入状态信息等内容。本课题设计的数据通信系统结构简单、使用方便、设计灵活,能够满足工业控制中网络化、智能化的发展要求,对目前基
3、于CAN总线的研究具有积极作用。关键词:CAN数据通信,SJA1000,单片机AbstractWiththerapiddevelopmentofscienceandtechnology,industrialcontrolandautomationtechnologycontinuestoprogressaswellasthemicroprocessorapplication,fieldbustechnologyhasincreasinglybecomethefocusofvariousdomesticandinternati
4、onalindustry.Thetraditionalindependentinstrumentcannotmeetthecurrentcontrolsystemoflarge-scale,intelligent,networkeddirectionrequirements,anovelbasedonthefieldbusinintelligentinstrumentemergeasthetimesrequire.CAN(ControllerAreaNetwork)fieldbusasaselfefficiencysuppo
5、rtdistributedcontrolandreal-timecontroltechnology,withgoodstability,highreliability,strongantiinterferenceability,fastcommunicationrate,lowmaintenancecostanditsuniquedesign,nowhasbecomethemostwidelyusedoneofthefieldbus.ThesubjectoftheuseofmainstreamchipSTC89C52micr
6、oprocessor,withindependentCANcontrollerSJA1000designofCANbusdatacommunicationsystemhardwarecircuit,theCANbuscommunicationmoreintuitive.Thispaperpresentsthecorrespondingcommunicationmodel,communicationsoftwaremodelincludingtheapplicationlayerprotocolmodule,basiccomm
7、unicationmoduleandmotioncontrolapplicationmodule.Amongthem,theapplicationlayerprotocolmoduleincludesamessageidentifierallocation,datadomaininformationformat,dataexchangemodeandmessagefilteringmechanismofcontent;basiccommunicationmoduleincludesCANcontrollerinitializ
8、ation,messagereceiving,sendingmessages,errorhandlingandinterruptserviceprogramcontent;motioncontrolapplicationmoduleincludesanoutputcontrolcomman