61阅读

恒温振荡培养箱-基于Modbus协议的恒温振荡培养箱控制器设计与实现

发布时间:2017-10-18 所属栏目:恒温恒湿振荡培养箱

一 : 基于Modbus协议的恒温振荡培养箱控制器设计与实现

苏州大学

硕士学位论文

基于Modbus协议的恒温振荡培养箱控制器设计与实现

姓名:陆晓峰

申请学位级别:硕士

专业:计算机技术

指导教师:王宜怀

20090501

基于Modbus协议的恒温振荡培养箱控制器设计与实现中文摘要

中文摘要

恒温振荡培养箱是生物、制药、食品、医学、卫生、环保、农林等科研和生产部门不可缺少的实验设备,可以为生化实验提供一个恒定的环境,其市场需求量也在快速增长。目前,国内生产的同类产品大多采用机械定时或8位微控制器控制,功能比较单一,数据处理能力弱。因此,研发高性能、多功能、数据处理能力强的恒温振荡培养箱是非常必要的。

本文选用32位微控制器LPC2368和8位微控制器AT89C55,采用双微控制器结构,设计并实现了一款基于Modbus协议的恒温振荡培养箱控制器,具有高性能、可靠性高、实时性好、数据处理能力强、易操作的特点。

论文阐述了恒温振荡培养箱控制器的开发过程。首先给出了恒温振荡培养箱控制器整体结构设计:其次给出了系统硬件模块设计;接着分析了Modbus协议,结合控制器的实际需求对Modbus协议功能码进行裁减,用它实现了两个微控制器间的可靠通信;分析了12C总线协议,编程实现了微控制器对12C总线串行EEPROM存储器的读写:给出了系统软件模块的流程图;然后,总结了系统调试方法,调试过程中遇到的问题和解决措施;最后,对项目进行了总结与展望。本课题的成果可以为其它高性能工业控制器的研发提供借鉴和参考。

经生产厂家测试和实际运行表明,基于Modbus协议的恒温振荡培养箱控制器工作稳定可靠,实时性好,有较强的抗干扰能力。

关键词:恒温振荡培养箱,微控制器,LPC2368,AT89C55,Modbus协议,i2c总线

作者:陆晓峰指导教师:王宜怀

AbstractTheDesignandRealizationofConstantTemperatureIncubmorShakerControllerBasedOnModbusProtocol

AbstraCt

Constanttemperatureincubatorshakerisindispensableexperimentequipmentforscientificresearch,suchasbiology,pharmacy,foodstuff,iatrology,sanitation,environmen_talprotection,agriculture,forestry,etc.Itcanprovideaninvariableenvironmentduringbiologyandchemistryexperimention.Withthedevelopmentofbioscience,itsrequirementisincreasingrapidly.Currently,mostofthesameproductsareusedmechanicaltimingorcontrolledby8一bitMCUathomewhichfunctionissingleness,precisionanddatamanagementislow.Soitisnecessarytodeveloptheconstanttemperatureincubatorshakerthathashighperformance,multi-functionandstrongdatamanagement.

Inthispaper,acontrollerofconstanttemperatureincubatorshakerisdesignedandimplemented、^,itlldoubleMCUarchitecturebasedonModbusprotoc01.nledoubleMCUarchitectureconsistsofa32-bitMCULPC2368andall8?bitMCUAT89C55.Thischaracteristicsarehighperformance,highreliability,strongdatamanageability,betterrealtimeandeasieroperation.

Thisthesisdescribesthedesignofconstanttemperatureincubatorshakercontroller.Firstly,itshowsthewholeframeworkdesignofthecontroller.Secondly,thedesignsofhardwaremodulesaregiven.Thirdly,accordingtOthepracticaluses,itanalysestheModbusprotocolandreducscitsfunctioncodetOsatisfysystemrequirement,andrealizesthedependablecommunicationbetwe,entwoMCUofcontroller.ItalsoanalysesmeIzCbusprotocol,realizestheMCUreadorwritedatatOserialEEPROMmemorybyrCbus.11弛flowchartsofsoftwaremodulesaregiven.Then,thedebugmethodofsystemisdiscussed.Analysingtheproblemsindebug,theresolventsaregiven.Atlast,thesummarizationandexpectationofthisprojectarediscussed.乃eresultsofthisresearchprovideareferenceforthedevelopmentofotherhighperformanceindustrialcontroller.

Itisprovedbymanufacturerseveretestsandactualrunthattheconstanttemperatureincubatorshakercontrollerrunsconsistentlydependable,晡也thebetterrealtimeperformanceandthestrongerantijammingability.

KeyWords:incubatorshaker,MCU,LPC2368,AT89C55,Modbusprotocol,12Cbus

WrittenbyLuXiaofeng

SupervisedbyWangY'dauai

苏州大学学位论文独创性声明及使用授权的声明

学位论文独创性声明

本人郑重声明:所提交的学位论文是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不含其他个人或集体已经发表或撰写过的研究成果,也不含为获得苏州大学或其它教育机构的学位证书而使用过的材料。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本人承担本声明的法律责任。

研究生签名:日期:

学位论文使用授权声明

苏州大学、中国科学技术信息研究所、国家图书馆、清华大学论文合作部、中国社科院文献信息情报中心有权保留本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布(包括刊登)论文的全部或部分内容。论文的公布(包括刊登)授权苏州大学学位办办理。

研究生签名:丝率哪:珥垡导师签名:诹日期:掣

基于Modbus协议的恒温振荡培养箱控制器设计与实现第一章概述

第一章概述

保护地球环境与资源,进行合理开发和利用,是人类的共识。随着人们在生物、食品、医药、环保、育种等领域的研究不断深入和发展,恒温振荡培养箱(Constanttemperatureincubatorshaker,以下简称CTIS)作为这些领域必备的实验研究设备,其市场需求量在快速增长的同时,也对C11S的性能和操作也提出了更高的要求。

目前,国内市场上的CTIS,如:苏州欧倍科学仪器有限公司、江苏省金坛市荣华仪器制造有限公司、上海一恒科技有限公司等厂家生产的CTIS,大多采用机械定时、电子或8位微控制器(MCU)控制,功能比较单一,数据处理能力弱。为此,受苏州捷美电子有限公司委托,自主研发了适应目前技术发展的高性能、多功能、易操作的智能化CTIS控制器。

智能化CTIS控制器需要一个人机操作和显示界面,为了方便操作和观察,这一部分放在CTIS的上部,而CTIS箱内温度、湿度、电机转速等参数的测控部分,在CTIS的底部,连接这两部分电缆的长度在2"-4米之间,对于距离大于2米的信号传输因易受外界电磁干扰而可靠性较差,严重影响系统工作的稳定性。如果采用一个MCU集中控制,将不可避免地存在上述问题。为了解决这个问题,本文设计的CTIS控制器采用双MCU结构j将人机交互与测控部分分开,分别由一个MCU独立控制。

双MCU结构的技术难点是MCU之间数据通信的可靠性和数据内容的快速准确解析。本文采用Rs485串行通信接口和Modbus协议,解决了上述技术难点。RS485接口抗干扰能力强,传输距离可达1000米以上,解决了数据通信的可靠性问题:Modbus协议是全球第一个真正用于工业现场的总线协议,具有开放、简单、实时性好的特性,用户可以免费使用,而且Modbus帧格式简单、紧凑,使用容易,开发便利,用它可以解决数据内容快速准确解析的问题。

本章概述了现场总线技术的历史与现状,对本文关键技术现场总线技术之一的Modbus协议也进行了概述,讨论了CTIS控制器的功能要求,最后给出了本文的工作和论文的结构安排。

二 : 基于Modbus协议的恒温振荡培养箱控制器设计与实现

苏州大学

硕士学位论文

基于Modbus协议的恒温振荡培养箱控制器设计与实现

姓名:陆晓峰

申请学位级别:硕士

专业:计算机技术

指导教师:王宜怀

20090501

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现中文摘要

中文摘要

恒温振荡培养箱是生物、制药、食品、医学、卫生、环保、农林等科研和生产部门不可缺少的实验设备,可以为生化实验提供一个恒定的环境,其市场需求量也在快速增长。[www.61k.com)目前,国内生产的同类产品大多采用机械定时或8位微控制器控制,功能比较单一,数据处理能力弱。因此,研发高性能、多功能、数据处理能力强的恒温振荡培养箱是非常必要的。

本文选用32位微控制器LPC2368和8位微控制器AT89C55,采用双微控制器结构,设计并实现了一款基于Modbus协议的恒温振荡培养箱控制器,具有高性能、可靠性高、实时性好、数据处理能力强、易操作的特点。

论文阐述了恒温振荡培养箱控制器的开发过程。首先给出了恒温振荡培养箱控制器整体结构设计:其次给出了系统硬件模块设计;接着分析了Modbus协议,结合控制器的实际需求对Modbus协议功能码进行裁减,用它实现了两个微控制器间的可靠通信;分析了12C总线协议,编程实现了微控制器对12C总线串行EEPROM存储器的读写:给出了系统软件模块的流程图;然后,总结了系统调试方法,调试过程中遇到的问题和解决措施;最后,对项目进行了总结与展望。本课题的成果可以为其它高性能工业控制器的研发提供借鉴和参考。

经生产厂家测试和实际运行表明,基于Modbus协议的恒温振荡培养箱控制器工作稳定可靠,实时性好,有较强的抗干扰能力。

关键词:恒温振荡培养箱,微控制器,LPC2368,AT89C55,Modbus协议,i2c总线

作者:陆晓峰指导教师:王宜怀

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

AbstractTheDesignandRealizationofConstantTemperatureIncubmorShakerControllerBasedOnModbusProtocol

AbstraCt

Constanttemperatureincubatorshakerisindispensableexperimentequipmentforscientificresearch,suchasbiology,pharmacy,foodstuff,iatrology,sanitation,environmen_talprotection,agriculture,forestry,etc.Itcanprovideaninvariableenvironmentduringbiologyandchemistryexperimention.Withthedevelopmentofbioscience,itsrequirementisincreasingrapidly.Currently,mostofthesameproductsareusedmechanicaltimingorcontrolledby8一bitMCUathomewhichfunctionissingleness,precisionanddatamanagementislow.Soitisnecessarytodeveloptheconstanttemperatureincubatorshakerthathashighperformance,multi-functionandstrongdatamanagement.

Inthispaper,acontrollerofconstanttemperatureincubatorshakerisdesignedandimplemented、^,itlldoubleMCUarchitecturebasedonModbusprotoc01.nledoubleMCUarchitectureconsistsofa32-bitMCULPC2368andall8?bitMCUAT89C55.Thischaracteristicsarehighperformance,highreliability,strongdatamanageability,betterrealtimeandeasieroperation.

Thisthesisdescribesthedesignofconstanttemperatureincubatorshakercontroller.Firstly,itshowsthewholeframeworkdesignofthecontroller.Secondly,thedesignsofhardwaremodulesaregiven.Thirdly,accordingtOthepracticaluses,itanalysestheModbusprotocolandreducscitsfunctioncodetOsatisfysystemrequirement,andrealizesthedependablecommunicationbetwe,entwoMCUofcontroller.ItalsoanalysesmeIzCbusprotocol,realizestheMCUreadorwritedatatOserialEEPROMmemorybyrCbus.11弛flowchartsofsoftwaremodulesaregiven.Then,thedebugmethodofsystemisdiscussed.Analysingtheproblemsindebug,theresolventsaregiven.Atlast,thesummarizationandexpectationofthisprojectarediscussed.乃eresultsofthisresearchprovideareferenceforthedevelopmentofotherhighperformanceindustrialcontroller.

61阅读请您转载分享:

Itisprovedbymanufacturerseveretestsandactualrunthattheconstanttemperatureincubatorshakercontrollerrunsconsistentlydependable,晡也thebetterrealtimeperformanceandthestrongerantijammingability.

KeyWords:incubatorshaker,MCU,LPC2368,AT89C55,Modbusprotocol,12Cbus

WrittenbyLuXiaofeng

SupervisedbyWangY'dauai

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

苏州大学学位论文独创性声明及使用授权的声明

学位论文独创性声明

本人郑重声明:所提交的学位论文是本人在导师的指导下,独立进行研究工作所取得的成果。[www.61k.com)除文中已经注明引用的内容外,本论文不含其他个人或集体已经发表或撰写过的研究成果,也不含为获得苏州大学或其它教育机构的学位证书而使用过的材料。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式标明。本人承担本声明的法律责任。

研究生签名:日期:

学位论文使用授权声明

苏州大学、中国科学技术信息研究所、国家图书馆、清华大学论文合作部、中国社科院文献信息情报中心有权保留本人所送交学位论文的复印件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内容和纸质论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布(包括刊登)论文的全部或部分内容。论文的公布(包括刊登)授权苏州大学学位办办理。

研究生签名:丝率哪:珥垡导师签名:诹日期:掣

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第一章概述

第一章概述

保护地球环境与资源,进行合理开发和利用,是人类的共识。(www.61k.com]随着人们在生物、食品、医药、环保、育种等领域的研究不断深入和发展,恒温振荡培养箱(Constanttemperatureincubatorshaker,以下简称CTIS)作为这些领域必备的实验研究设备,其市场需求量在快速增长的同时,也对C11S的性能和操作也提出了更高的要求。

目前,国内市场上的CTIS,如:苏州欧倍科学仪器有限公司、江苏省金坛市荣华仪器制造有限公司、上海一恒科技有限公司等厂家生产的CTIS,大多采用机械定时、电子或8位微控制器(MCU)控制,功能比较单一,数据处理能力弱。为此,受苏州捷美电子有限公司委托,自主研发了适应目前技术发展的高性能、多功能、易操作的智能化CTIS控制器。

智能化CTIS控制器需要一个人机操作和显示界面,为了方便操作和观察,这一部分放在CTIS的上部,而CTIS箱内温度、湿度、电机转速等参数的测控部分,在CTIS的底部,连接这两部分电缆的长度在2"-4米之间,对于距离大于2米的信号传输因易受外界电磁干扰而可靠性较差,严重影响系统工作的稳定性。如果采用一个MCU集中控制,将不可避免地存在上述问题。为了解决这个问题,本文设计的CTIS控制器采用双MCU结构j将人机交互与测控部分分开,分别由一个MCU独立控制。

双MCU结构的技术难点是MCU之间数据通信的可靠性和数据内容的快速准确解析。本文采用Rs485串行通信接口和Modbus协议,解决了上述技术难点。RS485接口抗干扰能力强,传输距离可达1000米以上,解决了数据通信的可靠性问题:Modbus协议是全球第一个真正用于工业现场的总线协议,具有开放、简单、实时性好的特性,用户可以免费使用,而且Modbus帧格式简单、紧凑,使用容易,开发便利,用它可以解决数据内容快速准确解析的问题。

本章概述了现场总线技术的历史与现状,对本文关键技术现场总线技术之一的Modbus协议也进行了概述,讨论了CTIS控制器的功能要求,最后给出了本文的工作和论文的结构安排。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第一章概述基于Modbus协议的恒温振荡培养箱控制器设计与实现1.1现场总线的历史与现状

1.1.1现场总线的产生

随着科学技术的快速发展,过程控制领域在过去的两个世纪里发生了巨大的变革。[www.61k.com]150多年前出现气动控制系统和气动信号标准,标志着控制理论初步形成,但此时尚未有控制室的概念;20世纪50年代,随着基于0.10mA或4-20mA的电流模拟信号的模拟过程控制体系被提出并得到广泛的应用,标志了电气自动控制时代的到来,三大控制论的确立奠定了现代控制的基础,设立控制室、控制功能分离的模式也一直沿用至今;20世纪70年代,随着数字计算机的介入,产生了“集中控制"的中央控制计算机系统,而信号传输系统大部分依然沿用4-20mA的模拟信号,不久人们也发现了伴随着“集中控制",该系统存在着易失控、可靠性低的缺点,并很快将其发展为分布式控制系统tllfDistributedControlSystem,DCS);微处理器的普遍应用和计算机可靠性的提高,使分布式控制系统得到了广泛的应用,由多台计算机和一些智能仪表以及智能部件实现的分布式控制是其最主要的特征,而数字传输信号也在逐步取代模拟传输信号。随着微处理器的快速发展和广泛的应用,数字通信网络延伸到工业过程现场成为可能,产生了以微处理器为核心,使用集成电路代替常规电子线路,实施信息采集、显示、处理、传输以及优化控制等功能的智能设备。设备之间彼此通信、控制,在精度、可操作性以及可靠性、可维护性等都有更高的要求【2】。由此,导致了现场总线的产生。

在1984年,国际电工委员会(InternationalElectrotechnicalCommission,IEC)正式提出了现场总线的概念,IEC61158标准中对现场总线(Fieldbus)的定义为:安装在生产过程区域的现场设备、仪表与控制室内的自动控制装置、系统之间的一种串行、数字式、多点通信的数据总线【31。现场总线是面向工厂底层自动化及信息集成的数字化网络技术。现场总线类型主要有:FF、ProfiBus、ControlNet、P-NET、InterBus、CAN和Modbus等。这些总线各有各的规范,互不兼容。

61阅读请您转载分享:

现场总线控制系统有如下主要优点【4J:

①全数字化。具有精度高、抗干扰能力强的特性。

②全分布。各现场设备有足够的自主性,实现真正的分布式控制。③双向传输。现场总线设备在一条线上既可以向上传递传感器信号,也可以向下

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第一章概述传递控制信号。(www.61k.com]

④自诊断。现场总线仪表具有自诊断功能,便于维护。

⑤节省布线及控制室空间。节省了布线费用,降低了中央控制室的造价。

⑥多功能仪表。可以在一个仪表中集成多种功能,做成多变量变送控制器。

⑦开放性。1999年底现场总线协议已被IEC批准正式成为国际标准,使现场总线成为一种开放的技术。

⑧互操作性。现场总线标准保证不同厂家的产品可以互操作,降低控制系统的成本。

⑨智能化与自治性。现场总线设备具有很高的智能,能处理各种参数、运行状态信息及故障信息,大大提高了整个控制系统的可靠性。

1.1.2现场总线的现状

由于各个国家各个公司的利益之争,虽然早在1984年IEC和国际标准协会(ISA)就着手开始制定现场总线的标准,至今统一的标准仍未完成【5】。很多公司也推出其各自的现场总线技术,但彼此的开放性和互操作性还难以统一。目前现场总线市场有着以:;!F的特剧6】:

①多种现场总线并存。目前世界上存在着大约四十余种现场总线,其中常用的大概有十种总线,占有80%左右的市场。

②各种总线都有其应用的领域。每种总线都有其应用的领域,而这些划分也不是绝对的,每种现场总线都力图将其应用领域扩大,彼此渗透。

③每种现场总线都有其国际组织和支持背景。大多数的现场总线都有一个或几个大型跨国公司为背景并成立相应的国际组织,力图扩大自己的影响、得到更多的市场份额。

④多种总线成为国家和地区标准。为了加强自己的竞争能力,很多总线都争取成为国家或者地区的标准。

⑤设备制造商参与多个总线组织。为了扩大自己产品的使用范围,很多设备制造商往往参与不止一个总线组织。

⑥各个总线彼此协调共存。由于竞争激烈,而且还没有哪一种或几种总线能一统3

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第一章概述基于Modbus协议的恒温振荡培养箱控制器设计与实现市场,很多重要企业都力图开发接口技术,使自己的总线能和其他总线相连,在国际标准中也出现了协调共存的局面。[www.61k.com]

1.2Modbus协议概述

Modbus协议是Modicon公司在1979年提出的一种用于工业控制器之间通信的协议【刀,是全球第一个真正用于工业现场的总线协议,Modicon公司后来被施耐德电气收购,现为施耐德电气的一个品牌。由于Modbus协议具有标准性、简单高效、开放性好的特点【8】,使它成为目前应用最广泛的现场总线协议之一。

Modbus是面向消息的协议,可以支持多种常用的电气接口,如:RS232、RS422、RS485等【9】,因此与其它的现场总线不同,它不需要专用的芯片与硬件,现有控制器在硬件上不需做任何改动就可以实现安全可靠的通信【101。

为了适应分布式控制和网络应用的需要,施耐德电气在1999年又推出了基于以太网的ModbusTCP协议。ModbusTCP协议的应用层采用Modbus协议,传输层使用TCP协议,网络层采用P协议,因此ModbusTCP不但可以在局域网使用,还可以在广域网和因特网上使用【111。

2004年Modbus协议被采纳成为我国工业自动化行业标准【8】,正式发布了GB/Z19582.1-2004、GB/Z19582.2?2004、GB/Z19582.3.2004三个有关Modbu瓷的行业标准。2008年4月,Modbus协议正式成为工业通讯领域现场总线技术国家标准OBfr19582.20081121。

1.3CTIS控制器的功能要求

CTIS的作用是为生化实验提供一个恒定的环境,因此CTIS控制器应具有如下的功能:

①对培养箱内的振荡频率、温度、湿度、运行时间进行设定;

②实时监测当前的振荡电机转速、温度、湿度值;

⑨将测量值与设定值进行比较,控制有关设备执行相应动作,使培养箱在设定时间内保持稳定振荡频率、温度、湿度。4

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第一章概述1.4本文工作与论文结构

1.4.1本文的主要工作

本文的主要工作有:

①根据系统性能指标和功能,完成系统总体结构设计。(www.61k.com]提出用双MCU结构实现高性能CTIS控制器的新架构,其中一个MCU负责人机交互处理,另一个MCU负责测控和输入输出处理,提高了系统的可靠性和实时性。这种在一个控制器内采用双MCU的结构,是一种全新的结构,是本文的一个创新点。

②详细分析TModbus协议,结合控制器的实际需求对Modbus协议的功能码进行了裁减,用简化的功能代码集实现了系统内两个MCU间的可靠通信,降低了通信编程的复杂性,是本文的一个创新点。与通常将Modbus协议用于不同工业控制器之间构成工业现场总线控制系统的应用不同,本文将Modbus协议用于一个控制器内,为两个MCU的可靠通信提供保障,为Modbus协议开拓了一个新的应用领域,这是本文的又一个创新点。

③分析T12C总线协议,编程实现了MCU对12C总线串行EEPROM存储器的读写,可靠保存系统设置参数。

④实现相关硬件设计,主要内容包括:对控制器中的主控芯片、显示器等关键器件进行调研、选型;设计电路原理图;设计印刷电路板(PCB板)图;对各部分硬件电路进行调试;构建整个硬件系统。

⑤实现相关软件设计,主要内容包括:编制、调试LCD显示程序;编制、调试键盘扫描程序;编制、调试中文菜单程序;编制、调试系统参数设置程序;编制、调试EEPROM存储器读写程序;编制、调试中断程序;编制、调试通信程序;编制、调试测量和控制程序;系统软件的联机调试。

61阅读请您转载分享:

⑥项目后续工作,主要内容包括:编写相关技术文档和操作说明书;对系统进行连续运行测试;解决测试中发现的问题。对控制器进行改进。

1.4.2论文结构

第一章阐述了课题的背景及意义,对现场总线的历史与现状及Modbus协议进行了概述,讨论了CTIS控制器的功能要求,给出了本文的工作和论文结构安排。5

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第一章概述基于Modbus协议的恒温振荡培养箱控制器设计与实现

第二章根据课题提出的技术指标设计控制器系统的整体结构,提出了CTIS控制器的总体方案。(www.61k.com)给出了系统主要器件选型和软件开发平台选择。概述了32位高性能MCU芯片LPC2368和8位通用MCU芯片AT89C55的功能特性。

第三章详细讲述了CTIS控制器各模块的硬件电路设计。

第四章对Modbus协议进行详细分析,结合CTIS控制器的实际需求对Modbus协议功能码进行了裁减,实现了本项目控制器中两个MCU之间的可靠通信,并给出了Modbus协议通信的测试方法和测试实例。对12C总线协议进行详细分析,编程实现了MCU对12C总线串行EEPROM存储器的读写。给出了CTIS控制器软件各模块实现的流程图、系统主要界面。

第五章阐述了软硬件调试的步骤和方法,根据在软硬件实现过程中出现的问题,给出问题的分析、解决的措施以及项目实现过程中的一些体会。

第六章对本文的工作进行总结,对后续工作进行展望。6

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第二章CTIS控制器总体设计

第二章CTIS控制器总体设计

近几年随着电子技术的发展,32位MCU得到了迅速的发展,其技术越来越成熟,价格也越来越低,而它所具有的高性能、运算速度快、数据处理能力强的特点使它成为新一代高性能智能工业控制器MCU的首选。(www.61k.com)

本章根据系统的功能需求及技术指标,提出了以32位高性能MCU为主,以通用8位MCU为辅,采用双MCU结构的系统总体方案。给出了系统主要器件选型和软件开发平台选择。概述了32位高性能MCU芯片LPC2368和8位通用MCU芯片AT89C55的功能特性。

2.1系统概述

2.1.1系统功能及组成

智能化CTIS控制器应具有的功能是:

①参数设置:实现对培养箱的振荡频率即电机转速,箱内温度、湿度,运行时间的设定:

②参数监测:实时测量和显示培养箱当前的电机转速、箱内温度、湿度值;

③运行控制:控制调速电机、加热设备、制冷设备、加湿设备、风扇的工作,使箱内保持在设定的转速、温度、湿度环境。为生化实验提供一个恒定的实验环境。

整个系统可分为三个组成部分:

①人机交互部分(运行参数设置、状态显示等);

②参数测量和控制部分;

③输入输出接口部分(数据打印、存储或传输)。

2.1.2人机交互界面

CTIS控制器人机交互界面的部件及功能如表2.1所示。7

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第二章CTIS控制器总体设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

表2.1人机交互界面的部件及功能

部件

说明

【菜单】、【增加】、【减小】、【确认】、

功能

键盘控制系统的启动/停止,设定系统运行参数

【启/停】、【电源】6个按键

LCD显示屏

128X64点阵,可显示汉字和

字符

显示系统运行状态,实时测量值,设置菜

单,设置参数,操作提示等

红色灯亮表示加热,绿色灯亮表示制冷,黄色灯亮表示有报警

LED指示灯红、绿、黄3个指示灯

蜂鸣器1个蜂鸣器用于按键音响提示和声音报警

2.1.3测控参数及技术指标

CTIS控制器需要测量和控制的参数及技术指标如表2—2所示。[www.61k.com)

表2.2控制器测控参数及技术指标

测控参数温度测量转速测量湿度测量加热控制制冷控制转速控制加湿控制风扇控制

数量

l路环境。2路箱内1路电机l路箱内1路加热1路制冷1路电机1路加湿1路风扇

指标

0---60℃,测量精度±0.1℃0"--400rpm,测量精度±lrpm0~98%,测量精度±1%控制稳定度±1℃控制稳定度±l℃控制稳定度±lrpm稳定度±5%

增加箱内温、湿度分布均匀性

2.1.4输入输出接口

输入输出接口包括以下4类:①打印机接口:②USB接口:

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第二章crIS控制器总体设计

③Rs48s接口;

④以太网接口。[www.61k.com]

2.2系统总体结构

CTIS控制器中,连接人机交互晃面和测控这两部分电路的电缆长度在2"--4米之间,对于距离大于2米的信号传输因易受外界电磁干扰而可靠性较差,严重影响系统工作的稳定性。如果采用一个MCU集中控制,将不可避免地存在上述问题。为了解决这个问题,本文设计的CTIS控制器采用双MCU结构,将人机交互与测控部分分开,分别由一个MCU独立控制。

双MCU结构的技术难点是MCU之间数据通信的可靠性和数据内容的快速准确解析。本文采用RS485串行通信接口113】和Modbus协议,解决了上述技术难点。RS485接口抗干扰能力强,传输距离可达1000米以上,解决了数据通信的可靠性问题;Modbus协议是全球第一个真正用于工业现场的总线协议,具有开放、简单、实时性好的特性,用户可以免费使用,而且Modbus帧格式简单、紧凑,使用容易,开发便利,?用它可以解决数据内容快速准确解析的问题。

C11S控制器系统总体结构如图2,1所示。

61阅读请您转载分享:

LED指示灯llLCD显示屏

蜂鸣器

EEPROM篇RS485晶VI接

Modbus协议

RS485接口

32位MCUl严IRS485接口TCPBP接口USB接口打印接口

温度lI湿度ll转速lI加热II制冷lI加湿Il风扇Il转速

传感器II传感器II传感器lI控制II控制II控制II控制lI控制

图2.1CTIS控制器系统总体结构框图9

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第二章CTIS控制器总体设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

CTIS控制器采用双MCU架构,一个是32位高性能MCU,用于完成系统监测与控制、数据输入输出处理;另一个是8位通用MCU,用于完成运行参数设定、数据显示和命令输入等人机交互管理。[www.61k.com]两个MCU之间经RS485接口采用Modbus协议通信,通信方式采用RTU模式。另外,图2.1中32位MCU配置的TCP/IP网络接口及第二个RS485接口,为以后联网组成分布式控制系统提供了支持。

在一个控制器中采用双MCU的架构,具有可靠性高、实时性好、研发时间短、研发效率高的优点。两个MCU各自负责处理不同的事务,既发挥了各自的长处,其软硬件又相互独立,使系统测控的实时性得到了提高。两个MCU间经RS485接口采用Modbus协议通信【141,使通信的可靠性得到了保障,解决了一个系统中并行数字信号传输距离大于2米时容易受干扰而不稳定的问题。

2.3器件选型及开发平台选择

对嵌入式系统的设计来说,元器件选型是非常重要的,它不仅决定了产品的性能和研发周期,还可能会影响到以后产品的生产成本和周期。CTIS控制器的设计目标是:高性能,易操作,可扩展。根据系统总体方案和设计目标,结合元器件性能特点,下面从MCU和外围器件两个方面对系统所用器件进行选型,同时选择了相应的开发平台。

2.3.1MCU选型

MCU是嵌入式系统的核心,因此MCU的选型是系统实现的关键。根据系统设计目标,从高性能、低价位、通用性;运算、处理能力强;拥有的外设接口类型、数量多;开发工具支持多等方面考虑,本文32位MCU选用基于ARM7的高性能32位微控制器LPC2368,8位MCU选用基于MCS.51的通用8位微控制器AT89S52。

AT89S52内的Flash程序存储器为8KB,但在实际编程和调试过程中,由于人机交互处理的目标程序代码达到了16KB,因此,8位MCU最终选用了MCS.51系列中有20KBFlash程序存储器的AT89C55微控制器。10

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第二章C11S控制器总体设计2.3.2外围器件选型

外围器件的选择是围绕MCU资源、系统的技术指标和器件的电气性能进行的,依照这个原则,本文选用了以下主要外围器件:

(DLCD显示器:采用苏州和美光电科技有限公司生产的有背光照明的128X64点阵的液晶显示器12864C[15】,可以显示汉字;

②非易失性存储器:采用12C总线串行EEPROM存储器AT24C16,容量2048字节,用来保存系统设置参数;

(§)RS485接口芯片:采用RS485信号转换芯片SN75176;

④复位电路:采用MAXIM公司的MAX813芯片,该芯片是电压监控和复位信号产生芯片,内部包含一个看门狗电路;

⑤运算放大器:采用高精度低失调精密运放OP07;

⑥光电耦合器:采用晶闸管输出过零型光耦MOC3041,用于交直流隔离,小功率交流控制;‘

⑦晶闸管:采用大功率晶闸管BTAl6,用于交流功率控制;

⑧继电器:采用欧姆龙公司的高品质继电器,作为交直流隔离的小功率交流开关。[www.61k.com]2.3.3开发平台选择

由于控制器软件全部采用嵌入式C语言编程【161,因此软件开发环境采用支持相应MCU的KeilC51V3.0【17】和KeilARMV3.0软件。

电路设计采用Protel99SE电路设计软件【1钔。

2.4MCU芯片概述

LPC2368概述2.4.1

LPC2368是飞利浦半导体公司生产的一款基于ARM7TDMI.S处理器的MCU,它具有丰富的外设接1:3,它的内部功能模块框图【19】可参见附录A.1。。

ARM7TDMI?S是一个基于精简指令集计算机(RISe)原理和流水线技术的高性能、低功耗32位微处理器,采用先进微控制器总线结构(AMBA),具有如下特点【20】:

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第二章CTIS控制器总体设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

QARM7TDMI.S处理器,工作电压3.3V,最高工作频率可达72MHz。(www.61k.com)具有先进的高性能总线(ASS)和先进的外设总线(APB)。

②片内有512KB的Flash程序存储器,具有在系统编程(ISP)和在应用编程(1AP)功能。ARM局部总线上有高达32KB的SRAM。以太网接口内有16KB静态RAM,也可用作通用SRAM。USB接口内有8KB静态RAM,也可用作通用SRAM。外部存储器控制器支持外扩Flash和SRAM。

⑨有两个AHB系统,可以同步进行Ethemet

执行程序的操作,在这些功能中不会产生竞争。

④先进的向量中断控制器,支持多达32个向量中断。4个外部中断输入。

⑤具有各种常用的串行接口。包括1个10/100Ethemet接口;1个USB2.0接口;4个带小数波特率发生功能的UART,其中1个带有Modem控制YO,1个带有IrDA支持,4个UART全部都带有FIFO;2路CAN通道,支持AcceptanceFilter/FullCANDMA、USBDMA以及从片内Flash模式;1个SPI接口;2个SSP接口,带有FIFO和多协议功能:3个12C接口;1个12S(Inter-ICSound)音频接口,用于数字音频的输入或输出。

61阅读请您转载分享:

⑥具有丰富的APB外设。包括1个加密的数字(SD)/多媒体卡(MMC)存储卡接口;6路10位A/D转换器;1路10位D/A转换器;4个通用定时器;1个PWM模块,支持三相电机控制;2KB静态RAM由RTC电源管脚供电,当芯片的其它部分掉电时允许数据存储在SRAM中;1个看门狗;70个通用I/O管脚。

⑦标准的ARM测试/调试接口。仿真跟踪模块支持实时跟踪。

⑧4种低功耗模式,包括空闲、睡眠、掉电和深度掉电。2个独立的电源域,允许根据所需的特性对功耗进行适当的调整。

从LPC2368的功能特点可以看出,它拥有丰富的外设接口、运算速度快、处理能力强,具有很高的性能价格比,完全满足CTIS控制器的设计需求及以后的扩展。2.4.2AT89C55概述

Intel公司于1980年推出了8位高性能8051单片机,之后不久,Intel公司彻底开放了8051单片机的技术,使很多半导体厂商加入了开发和改进8051单片机的行列中【211。兼容8051指令系统的8位单片机统称为MCS.51系列MCU,目前该系列MCU12

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第二章CTIS控制器总体设计已发展到了几百个品种。[www.61k.com)MCS.51系列MCU通用性好,开发工具支持多,开发平台价格便宜,芯片价格低,被广泛用于嵌入式控制系统中。。

AT89C55是ATMEL公司推出的MCS.51系列低功耗、高性能8位MCU,它的内部功能模块框图【22】可参见附录A.2。它具有如下特点:

①片内有20KB在系统可重复编程的Flash程序存储器,擦写次数达1000次。具有三级程序存储器加密。片内有256×8位RAM。

②最高工作频率达33MHz。

③3个16位的定时器/计数器。

④8个中断源。

⑤32个可编程I/O口线。

⑥具有低功耗空闲和掉电模式。

从AT89C55的特点可知,它既可以满足CTIS控制器人机交互处理的需求,又具有很好的性价比,软件开发便利。

2.5本章小结

本章根据课题提出的系统需求,分别对CTIS控制器系统的三个组成部分:人机’l

交互部分、参数测量和控制部分、输入输出接口部分的功能及技术指标进行分析,提出了采用双MCU结构的新架构,经RS485接口用Modbus协议实现可靠通信的系统总体结构方案。讨论了系统元器件选型和开发平台的选择,对所选用的两款MCU功能特点进行了概述。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第三章CTIS控制器硬件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

第三章CTIS控制器硬件设计

根据基于Modbus协议的CTIS控制器设计的总体结构方案,整个系统由人机交互部分、参数测量和控制部分、输入输出接口三大部分组成。[www.61k.com]本章根据设计方案,对各部分硬件模块进行详细设计。其中输入输出接口是32位MCU的内部模块,不需要添加相应的外部电路模块。

硬件设计首先要进行的是电路原理图设计,然后在电路原理图基础上实现PCB设计。

3.1CTIS控制器面板

CTIS控制器面板是系统的人机交互界面,它由128X64点阵LCD显示屏,绿、红、黄3个状态指示灯,6个按键组成。6个按键分别为菜单键、增加键、减小键、确认键、启/停键、电源键。CTIS控制器面板如图3.1所示。

图3-1CTIS控制器面板14

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第三章CTIS控制器硬件设计

3.2人机交互子系统硬件设计

人机交互部分需要完成系统运行参数设定、操作控制、当前运行参数和状态显示等功能。[www.61k.com]下面给出人机交互子系统硬件模块的详细设计。

3.2.1

AT89C55系统电路

为了在串行通信时产生准确的波特率,AT89C55系统晶体振荡器采用频率为

11.0592MHz的石英晶体,振荡电容为20pF。

AT89C55系统电路如图3-2所示。在靠近电源输入引脚处需要加一个0.1uF的滤波电容,对大多数I/O引脚需要加10KQ的上拉电阻。图中各引脚信号的含义将在后

面各部分电路中描述。

■吼.:。印^

LE2)●

2。.”,

●、5’

巩DCr萄..P11

_plj.

PlA

PLifr2z两CADI)PO.t

、协珊瑚p

.弘D2)PO卫

…船曲;..m.,,”n.?,7.。

晤一。‘芋

l一景Y;

■?-—.一’r

{u∞一R

‘江∞)PO,

c^.D4)PO.●

Plj咖氆耐∞S弦Oj’pl正固Ⅱ;∞(AD6)m.6

:Pj,7csc田‘簟D7巩,.

c^8卿力

口褥,一琊二.掣.一:H,融

∞裂’n■k一一

’--一

”,Dj搅.kJ.L—f

‘竹一…n^‘’”…

24

R铂锨Il

CC

Rf,zSSD

13

∽)P2.I

k]

C¥2

};!

16。1718.

泓幽阳二衄丁回

CR,x功纷.Op33m盯1)

阳.401】)均-5C£U

c^10)p2.2‘A11)p2.,

‘▲12卿.●

笛Do硼j,r,L一刀OK“n擒PAU疆r,-一一

30

MEl仃,一

r—]

SD^Dl

.[

藓r-卜

訇,r

s11孙^r

IL::,’

ScLl[置19:

p3石闻

阳州两

X丁^l2

61阅读请您转载分享:

伯13)朗j似14)p2.‘雠l匀P3一

POW腿——。n.

Ⅱs485姬,r,k一

孔、

“.撼恐..卜一

船.7.“一HV∞L-.--.J--

wc

锄D

11D翌I.1|产L1rI

^IE耐l时丽i云匿

X“吐-!追,计p

毒j:逼悯亨

I兜翟可

图3.2

AT89C55系统电路

3.2.2键盘电路

控制器设有“菜单"、“增加"、“减小"、“确认’’、“启/停’’、“电源’’6个按键,信

号分别为MENU、UP、DOWN、OK、PAUSE、POWER,由P2.0一--p2.5引脚输入到

AT89C55内部,用程序进行按键判别。键盘电路如图3.3所示。

15

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第三章CTIS控制器硬件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

图3.3键盘电路

3.2.3LOD显示器接口电路

64点阵LCD显示器用来显示字符和数据。[www.61k.com]采用20针单排连接,其接口电128X

路如图3-4所示。图中电位器WRl是用来调节显示屏背光亮度的,LEDK信号是背光电源的控制脚,由AT89C55的P2.7引脚驱动三极管8050来控制;八位数据信号D0-~D7由AT89C55的P0端口P0.0-~P0.7提供,控制信号SCLKE、STRRW、SDADI、CSl、CS2分别由AT89C55的P3.7、P3.6、P3.5、P3.3、P3.4引脚给出。

LCD

图3-4LCD显示器接口电路16

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第三章CTIS控制器硬件设计3.2.4EEPROM存储器电路

EEPROM存储器电路如图3.5所示。(www.61k.com)fc总线的时钟信号SCL和数据信号SDA由AT89C55的I/O引脚P1.0和P1.1通过软件模拟来实现。

VCC

jrAT24C16

图3.5EEPROM存储器电路

3.2.5LED指示和蜂呜器电路

LED指示和蜂鸣器电路如图3-6所示。红、绿、黄3个LED指示灯的控制信号LED—R、LED—G、LED—Y分别由AT89C55的P1.3、P1.2、P1.4引脚来控制,蜂鸣器的发声由AT89C55的P1.5引脚驱动三极管8050来控制。

、圮C

j,

图3-6LED指示和蜂鸣器电路

3.2.6RS485接口电路

RS485接口电路如图3.7所示。RS485接13采用差分信号,由A、B两根信号线传输,两根信号线之间需要120欧姆的匹配电阻;RS485接口采用半双工方式通信,17

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第三章C'lTS控制器硬件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现因此需要一个传输方向控制信号,见图中的RS485E信号,它由AT89C55的P2.6引脚来提供;收/发信号RS485R、RS485D接到AT89C55的串行接口收/发引脚RXDfP3.o)、TXDfP3.1)。(www.61k.com)SN75176将1]rL电平串行信号转换成RS485差分信号。在RS485接口上用Modbus协议实现AT89C55与LPC2368的通信。

VEC

图3.7RS485接口电路

3.2.7看门狗与复位电路

看门狗与复位电路采用的是MAXIM公司的MAXSl3芯片,该芯片是电压监控和复位信号产生芯片,内部包含一个看门狗电路,看门狗的计时时间为1.6秒,被广泛应用于嵌入式系统中,其应用电路如图3.8所示。MAX813的复位输出信号RESET接到AT89C55的复位输入引脚RST(第10脚),看门狗数据清除信号WDI由AT89C55的P3.2提供。系统正常工作时,在小于1秒钟的时间内就会由程序输出一个WDI信号,该信号使MAXSl3内的看门狗计时器清零,不会产生复位信号;如果程序“跑飞”或进入死循环,在1.6秒钟内就不会输出WDI信号,看门狗计时器计满1.6秒就会产生一个复位信号,使MCU复位并重新开始运行程序。使用看门狗可以显著提高系统可靠性。

戳王币一

口MR啊’D0优C捌姗G船WDI

印IFPO盘5

图3-8看门狗与复位电路

18

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

苎王坚!!坠!塑丛生焦望垂董堕苎堕墼型墨堡生皇塞堡塑三皇塑!堡塑墨堡壁量盐3.3人机交互子系统PCB板

图3-9是人机交互子系统PCB板实物照片

图3-9人机交互子系统PCB板

3.4测控于系统硬件设计

测量和控制子系统需要完成对CTIS电机转速、箱内温度、湿度进行实时测量,控制调速电机、加热、制冷、加湿、风扇等设备的工作,使CTIS内按照设定值保持在一个恒定的实验环境。(www.61k.com)下面给出测控子系统硬件模块的详细设计。

34.1LPC2368系统电路

32位高性能MCULPC2368是测控子系统的核心,采用100引脚的TQFP封装它的基本系统电路如图3一lO所示。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

aIllF

+1,

●1

学■■8u8hk

TDo

TDI

¨们>

辨辩溺

TMS

舞蕊

T哪

TCKPO

PO25/AD0P0

ld

盂置

五P2G/PWMII/T3D|

P2.I,PwMI2,R】Dl百’

PZ2/PW'MI3/CTSle

747372

J翻

2“^瑚3,^OUT∞,

61阅读请您转载分享:

24//咖Ifl0SR.X_WS

VDD(加)

P2.】『PWMl.4/DCDI/PIPESTAT2

P2.4/PWMIP25/I:rWMI

1P2.6/PCAP

IlI.

0.1uF

2t'[2SR.X_SD,/VI'捌

5/DSRl,rnCES.rNCdaDTRl九1认CEPIm

0/KII/TRAcE,,Pl盯】

_13

口2眦’

L』戳工1

nI'IF’

P022VADO0n2SRX_C'LKV'DDAVSs^

P27/RD2/RTSI/TRACEPK'T2

I占

+3.3

OIuF

V聊

VDD(DCtCXr哪

I墟TOUT

VSS

=生nIuF

LPC2368

P2.P/UICONNF.CT/R..XD2/硎0阳I抓)∞I,sSEl.,IVSSEL

P2

8rl'D2/'l'ZD2九RACEPKT3

}——_一

.__-L.-

P015/T'XDI/SCK0/SCK

f舶I7『CTSl,MlSOO/MISO

。(www.61k.com]P口lJNDCDI,MOSl0,MOSJP0P0

R'I'CXl

R陆£rRTC矗

VBAT

19/DSRItldCICLK./SDAI2G/DTRIIMCICMD/SCLI

AT24C16

^o^IA2GND

VCC

I启CKl“删jPJ30^,BU碰^加4

PIjXI

期2I/R[1,MClPW刚RDl

舶盈厅r体I,MCIDA'rI圹rDl

VSS

TS耵

SCL

10KllIOKⅪ

P0.2眦U

裔g

VDD(3v∞

.l-F

+Z3

眩10/Eli/T0

一P211

。P'z12

SD慷

舶?瑚D柚

c-_葛粤^

殳.:

吕罨宝

”价》

;争E—骚罱甄=譬

∞∞>

譬三互互2昌22≈

+13

ItlaF亨

图3.10

.彳“1嵋

LPC2368系统电路

3.4.2

5V转3.3V电源电路

系统中的3.3V电源是5V电源经NCP5504集成稳压器转换得到的,转换电路如图3.11所示。

图3-11

5V转3.3V电源电路

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第三章CTIS控制器硬件设计

图中power是5V电源指示灯,NCP5504是双路250mA低压差线性稳压器,其中1路输出为3.3V固定电压VOUTI,另1路输出是1.25V"5V可调电压VOUT2,VOUT2=1.25×(1+R16/R21)V。(www.61k.com)

3.4.3湿度测量电路

:湿度测量电路如图3.12所示。湿度传感器的输出信号WETIN经过精密运放OP07放大后送到LPC2368的ADC输入引脚AD3上,在LPC2368内经过模/数转换后可计算出湿度值。湿度传感器输出信号范围为0"--5V,而LPC2368的电源电压为3.3V,因此要将WETIN降到3.3V内,图中AD3=l/2×(I+2/10)WETIN=0.6WETIN,即AD3范围为0"-3V。CTIS内湿度范围为30%'--'98%。

图3.12湿度测量电路

3.4.4温度测量电路

温度传感器采用Ptl00,它具有精度高、稳定性好的特点。温度测量电路如图3.13所刁写o,r-一

温度传感器连到插座J1A上,构成双线制电桥测量电路,从温度传感器来的信号经过精密运放OP07放大后送到LPC2368的ADC输入引脚ADO上,在LPC2368内经过模/数转换后计算出温度值。控制器内有3路相同的温度测量电路,其中1路是周围环境温度,2路是CTIS内不同位置的温度,用来判断CTIS内温度的均匀程度。CTIS内温度范围为4"-'60℃。2l

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第三章crls控制器硬件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

J1A

图3.13温度测量电路

3.4.5风扇和照明控制电路

风扇和照明控制电路如图3.14所示。[www.61k.com]LPC2368的控制信号经过驱动芯片ULN2803后为DRl,由它控制继电器Relay的开合,直接对风扇和照明灯的供电进行控制。

+12

图3.14风扇和照明控制电路

3.4.6加热和制冷控制电路

加热和制冷设备的控制电路如图3.15所示。由于加热或制冷时需要根据温度控制它们的功率,因此采用两级控制。第一级,LPC2368的控制信号经ULN2803后为DR2,它驱动继电器来控制设备的交流供电;第二级,LPC2368的控制信号CTRL先经过过零型晶闸管输出光电耦合器MOC3041进行交直流隔离,MOC3041的输出信号再驱动大功率的晶闸管BTAl6,用来控制加热或制冷设备的功率,配合软件的

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

垩±坚塑!堕塑垫鲤望望壅堕堑壹堕垫型墨堡生量壅垫差三差璺!!墨塑量霎壁堡盐PID(kB例积分微分)控制算法,实现对温度准确、稳定控制。[www.61k.com)MOC3041的最大驱动电流为IA,BTAl6的最大驱动电流为16A,加热、制冷设备的功率在500W~1200W之间,还不到BTAl6最大驱动功率50%,因此该驱动电路完全满足系统需求。

图3-15加热和制冷控制电路

347电机驱动控制电路

图3-16是电机驱动和控制电路。CTIS内电机转速范围为0~400rpm。

61阅读请您转载分享:

圈3-16电机驱动控制电路23

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

蔓三至鲤!塑型璺堡壁塑生至士丛生堕塑堡盟望塑塑董塑壹堕墼型量盟壁型3.5测控子系统PCB板

测量和控制于系统PCB板实物照片如图3-17和图3-I8所示。[www.61k.com]

图3-】7测控子系统主控PCB板

图3-I8测控子系统驱动PCB板

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第三章CTIS控制器硬件设计3.6本章小结

本章给出了CTIS控制器人机交互子系统和测控子系统各硬件模块的详细设计以及PCB板实物照片。[www.61k.com]

E‘人机交互子系统硬件模块设计包括:8位微控制器AT89C55系统电路设计、键盘电路设计、LCD显示器接口电路设计、EEPROM存储器电路设计、LED指示和蜂鸣器音响电路设计、RS485接口电路设计、看门狗与复位电路设计。

测控子系统硬件模块设计包括:32位微控制器LPC2368系统电路设计、5V转3.3V电源电路设计、湿度测量电路设计、温度测量电路设计、风扇和照明控制电路设计、加热和制冷控制电路设计、电机驱动控制电路设计。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计

对于嵌入式系统,硬件电路设计完成以后,系统的功能将依赖于系统软件来实现。(www.61k.com)系统能否正确、可靠地工作,除了合理、正确的硬件设计外,还需要有功能完善的软件设计。本章通过详细分析Modbus协议,对Modbus协议功能码进行了裁减,用它实现了两个MCU之间的可靠通信,并给出了Modbus协议通信测试的方法和实例。此外,还通过分析12C总线协议,编程实现了MCU对12C总线串行EEPROM存储器的读写。之后,给出了系统人机交互子系统和测控子系统软件模块的功能和流程图,在本章最后举例给出了系统运行和操作的界面。

4.1Modbus协议分析

Modbus传输模式4.1.1

Modbus协议采用主.从方式通信,总线上只能有一台主设备,其余都是从设备【231,每个从设备都必须分配一个设备地址。每次通信都由主设备发起,主设备可以单独和从设备通信,也能以广播方式和所有从设备通信,如果单独通信,从设备返回一个消息作为回应,如果是以广播方式通信的,则从设备不作任何回应。设备地址0是广播地址,从设备的有效地址范围为1"'247[241。

Modbus协议有ASCII和RTU两种传输模式。在一个Modbus总线上的所有设备都必须采用同一种传输模式。

在ASCII模式中,每个8bit值都作为两个ASCII字符发送,高位字符在前,低位字符在后。这种模式的主要优点是字符的时间间隔可达到1秒而不产生错误【251。

在RTU模式中,每个8bit值包含两个4bit的十六进制字符。这种模式的主要优点是在同样的波特率下,可比ASCII模式传送更多的数据【26】。

4.1.2Modbus帧格式

对应ASCII和RTU两种传输模式,有两种帧格式。

ASCII帧以冒号“:"开始(ASCII码3AH),以回车换行符结束(ASCII码0DH,26

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计ohI-D。(www.61k.com)总线上的从设备不断侦测“:’’字符,当有一个冒号接收到时,每个从设备都解码地址域来判断是否与自己的设各地址一致。消息中字符间的时间间隔最长不能超过1秒,。否则接收设备将认为传输错误【271。ASCII帧格式如图4.1所示。

I起始符

:设各地址2个字符功能代码2个字符数据域(地址、长度、数据)LRC校验2个字符结束符0DOA

图4.1ASCII帧格式

RTU帧格式如图4.2所示,RTU帧以帧间隔作为消息帧的起始符和结束符,帧间隔必须大于3.5个字符时间,整个消息帧必须连续传输【281。如果在一帧完成之前有超过1.5个字符时间的停顿,接收设备将刷新不完整的消息并认为下一个字节是一个新消息帧的设备地址;同样,如果一个新消息帧在小于3.5个字符时间内紧接着前一个消息帧开始,接收设备将认为它是前一消息帧的延续,上述两种情况都将导致一个错误的帧【29】。也就是说,RTU帧数据以设备地址开始,以CRC校验结束,整个帧要连续传输,而消息帧之间要以大于3.5个字符时间隔开。

帧间隔(起始符)

4个字符时间设备地址8bit功能代码8bit数据域(地址、长度、数据)CRCCRC低字节高字节帧间隔(结束符)4个字符时间16bit

图牝l玎U帧格式

消息帧中的功能代码范围是1""255,各功能代码的具体含义【30】见表4.1。当消息由主设备发往从设各时,功能代码将告诉从设备需要执行哪些行为;从设备回应时,它使用功能代码来指示是正常回应(无错误)还是有某种错误发生(称作异常回应)。对正常回应,从设备回送收到的功能代码;对异常回应,从设备将功能代码的最高位置1后回送【311。例如,主设备发往从设备的消息要求读一个保持寄存器,功能代码为03H,对正常回应,从设备仅回应同样的功能代码;对异常回应,则返回的功能代码为83H。除功能代码最高位置l可以作异常应答外,从设备也可以将错误代码放到回应消息的数据域中,告诉主设备发生了什么错误。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章c!I墨控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

表4-1

功能代码

01

02

61阅读请您转载分享:

03

04

05

06

07

08

09Modbus功能代码一览表作用读取一组逻辑线圈的当前状态(ON/OFF)读取一组开关输入的当前状态(ON/OFF)名称读取线圈状态读取输入状态读取保持寄存器读取输入寄存器强置单线圈预置单寄存器读取异常状态回送诊断校验编程(只用于484)

控询(只用于484)读取在一个或连续多个保持寄存器的值读取在一个或连续多个输入寄存器的值强置一个逻辑线圈的通断状态写入一个值到保持寄存器中读取8个内部线圈的通断状态把诊断校验报文送从机,以对通信处理进行评鉴使主机模拟编程器,修改PC从机逻辑可使主机与一台正在执行长程序任务从机通信,探询该10从机是否已完成其操作任务,仅在含有功能码9的报文

发送后,本功能码才发送

可使主机发出单询问,并随即判定操作是否成功,尤其

是该命令或其他应答产生通信错误时

可使主机检索每台从机的Modbus事务处理通信事件记

录。(www.61k.com)如果某项事务处理完成,记录会给出有关错误

可使主机模拟编程器功能修改PC从机逻辑11读取事件计数读取通信事件记录编程(184/384,484,

584)

探询(184/384,484,

584)

强置多线圈

预置多寄存器

报告从机标识

(884和MICRO84)

重置通信链路1213可使主机与正在执行任务的从机通信,定期控询该从机是否己完成其程序操作,仅在含有功能13的报文发送后,本功能码才得发送强置一串连续逻辑线圈的通断写入多个值到连续的保持寄存器中读取指定编号从机的类型及运行状态可使主机模拟编程功能,修改PC状态逻辑141516171819发生不可修改错误后,使从机复位于已知状态,可重置

顺序字节

显示扩展存储文件中的数据信息

把通用参数写入扩展存储文件

留作用户功能的扩展编码

留作内部使用

用于异常应答202122"-'6465~7273~119120"--"127读取通用参数(584L)写入通用参数(584L)保留作扩展功能备用保留作用户扩展非法功能保留保留128~255

表4.1名称栏中所标的484、584等数字是施耐德电气生产的控制器的型号,相应的功能码也是在该型号控制器中才被使用。

数据域通常包括要读/写的从设备内部存储单元起始地址(Modbus协议中称之为寄存器地址)、数据长度、实际数据三部分内容【321。在某些消息帧中数据可以没有,即数据长度为O;数据长度最大为255。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计

校验码由主设备计算并放到消息帧中,从设备在接收消息的过程中重新计算校验值,并将它与接收到的消息帧中的校验值比较,如果两个值不相等,说明有错误【33】。(www.61k.com]

在ASCII模式传输时,帧校验采用LRC纵向冗余校验码【34】,它是一个8位二进制值的字节,它的产生比较简单,计算方法是将消息帧中的设备地址、功能代码、数据域的每个8Bit字节连续累加,丢弃进位即可。

。在RTU模式传输时,帧校验采用CRC循环冗余校验码【351,它是一个16位的二进制值,包含两个字节。

4.2Modbus协议实现

Modbus功能代码裁减4.2.1

对于Modbus协议定义的功能码,在实际测控系统中,通常只用到其中的几个功能码,一般只要有读/写单个寄存器和连续读/写多个寄存器的功能就能满足系统的控制需求。

.在CTIS控制器设计时,根据系统实际需求,对Modbus协议的功能代码进行了裁减,仅定义了读单个寄存器、写单个寄存器、连续读多个寄存器、连续写多个寄存器四个功能代码,构成简化的Modbus协议功能代码集,如表4.2所示。它可以满足并实现CTIS控制器中各控制参数的设置、操作命令的发送、运行状态的读取等所有功能,而具体的参数、命令、状态定义于不同的寄存器地址中,由数据域的地址确定。表中的四个功能代码也可以定义成01、02、03、04四个连续的值。

表4-2

功能代码

03(03H)

04(04H)

06(06H)

16(10H)CTIS控制器功能代码定义功能主机读取从机单个寄存器数据主机读取从机多个连续寄存器数据主机写入从机单个寄存器数据主机写入从机多个连续寄存器数据

4.2.2功能码消息帧格式定义

CTIS控制器中两个MCU之间的通信采用Modbus协议的RTU模式。下面,对裁减后简化的Modbus协议功能代码集中各功能代码的RTU消息帧格式,给出详细

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现的定义。[www.61k.com)由于Modbus协议采用主.从应答方式进行通信,因此主机每发出一个消息,从机都要回答一个消息。各功能码消息帧格式定义如下:

①功能码03的RTU消息帧

03功能码主机发送的RTU消息帧格式为:

I从机号l功能码l寄存器地址I寄存器长度ICRC低字节ICRC高字节l

I整旦IQ!旦I幽I型型I型l

03功能码从机回送的IUU消息帧格式为:

I从机号l功能码l数据字节数I数据低字节l数据高字节lCRC低字节ICRC高字节Il型lQ:蔓I丝坚l型I趔l趔坠旦I其中,xxH为实际使用时相应的数值,下同。

②功能码04的RTU消息帧

04功能码主机发送的RTU消息帧格式为(n=0"-127):

I从机号l功能码l寄存器地址起始l寄存器长度lCRC低字节lCRC高字节l

IxxH04HIxxHnJxxHxxHI

04功能码从机回送的RTU消息帧格式为:

从机号功能码

xxH04H数据数据1数据l字节数低字节高字节2nxxHxxH数据n低字节xxH数据n高字节xxHCRCCRC低字节xxH高字节xxH

61阅读请您转载分享:

③功能码06的RTU消息帧

06功能码主机发送的RTU消息帧格式为:

I从机号I功能码l寄存器地址l数据低字节I数据高字节lCRC低字节lCRC高字节IlxxH106HIxxHIxxHxxHIxxHxxHI06功能码从机回送的RTU消息帧格式为:

l从机号l功能码l数据字节数I数据CRC低字节lCRC高字节I

I翌璺lQ鱼坚I!!坚lQQ旦堕!!旦l翌塑I翌塑l

其中,返回的数据为00H时,表示从机正确接收到数据;返回的数据为01H时,表示通信异常,从机没有正确接收到数据,下同。

④功能码16的RTU消息帧

16功能码主机发送的RTU消息帧格式30(n--0"--127).30

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计

从机号功能码

xxH

10H

数据数据1数据1字节数低字节高字节

2n

xxH

数据n低字节

xxH

数据1"1

高字节

xxI--I

CRCCRc

低字节

xxH

高字节

xxI-I

xxH

16功能码从机回送的R1U消息帧格式为:l从机号I功能码l数据字节数l

xxH

数据

ICRC低字节ICRC高字节l

xxlq

10H

01H

fOOH或01Hf

xxH

4.2.3消息帧CRC校验码计算

Modbus协议RTU消息帧中CRC校验码的产生有两种方、法【361:第一种是查表法,需要预先将校验码计算出来,组成一张CRC校验码表,使用时直接查表得到CRC校验码,其优点的产生校验码的速度快,缺点是需要占用较多存储器;第二种是直接计算法,用程序计算得到CRC校验码,其优点是节省存储器空间。[www.61k.com)本文CTIS控制器中采用第二种方法产生CRC校验码。CRC码计算方法【241如下:

①初始化~个16位寄存器,置所有数位均为1,即初值为FFFFH。

②取消息帧的第一个8位字节与16位寄存器进行“异或”运算。运算结果放入这个16位寄存器。③把16位寄存器向右移一位。

④若向右移出的数位是1,则用生成多项式1010000000000001(A001H)和16位寄存器进行“异或’’运算;若向右移出的数位是O,则不做运算。⑤重复第3步和第4步,直到移出8位,一个字节的数据处理结束。⑥取下一个8位字节与十六位寄存器进行“异或”运算。

⑦重复3~6步,直至消息帧所有字节均与16位寄存器进行“异或"运算并移位

8次。

⑨16位寄存器的内容即为2字节CRC校验码。

下面给出计算CRC校验码的函数,为了使函数具有通用性,减少重复劳动,函数内部全部采用局部变量。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

函数名:Crcl60

入12]参数:?dp一数据帧首地址指针,len—数据帧长度(字节数)

返回值:数据帧的16位CRC校验码

unsignedintCre16(unsignedchar’dp,unsignedcharlen)

unsignedcharij,flag._ere;//定义8位局部变量

unsignedimcrc;//定义16位CRC校验码寄存器

crc=0xffff;//初始化CRC校验码寄存器

for(i=O;i<len;i++)肝面是16位CRC校验码计算过程

crch-dp[i];

for(j=0;j<Sj++)

flag_ere=creel;

crc>>=l;

if(flag__ere)crcA=Oxa001;

returncrc;//返回16位CRC校验码

..:}.....................................................................................一—一.4.2.4Modbus寄存器地址定义

Modbus协议实现通信时,主机要读/写的数据是由信息帧中数据域的寄存器地址决定的。[www.61k.com)在CTIS控制器中,寄存器的地址有三类,它们是:当前运行参数和状态、命令、设定参数。这些寄存器的地址要在编程之前先进行定义,根据定义的寄存器地址,主/从机双方才能正确识别数据和执行命令,它们是控制器通信的基础。控制器内三类寄存器地址的详细定义见表4.3、表44和表4.5。

表4-3当前运行参数和状态寄存器地址定义

寄存器地址数值类型数值含义

当前温度,范围4.0"--60.0"C,实际为×10后的整

01Hunsignedshort

数,即40~600

02Hunsignedshort电机当前转速,范围30一-400rpm

03H、04H、05Hunsignedshort剩余运行时间的小时值、分钟值、秒值

06H、07H、08Hunsignedshort实时时钟的年、月、日

09H、OAH、OBHunsignedshort实时时钟的时、分、秒

OCHunsignedshort设备工作状态,0:待机、1:运行、2:暂停、3:故障

0DHunsignedshort当前运行时段,设备可有4个运行时段,范围0"--332

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计

表4.4命令寄存器值定义

寄存器地址

61阅读请您转载分享:

0EH数值类型unsignedshort

unsignedshort

unsignedshort

unsignedshort

unsignedshort数值含义启动命令,需要从机返回是否执行状态暂停命令,需要从机返回是否执行状态OFH10H11H12H数据存入U盘命令,需要从机返回执行及完成状态关外围部件电源命令,需要从机返回是否执行状态开外围部件电源命令,需要从机返回是否执行状态

表4.5设定参数寄存器值定义

寄存器地址

13H

14H

15H

16H

17H

18H

19H

1AH

1BH、1CH

1DH、lEH数值类型unsignedshortunsignedshort数值含义运行时段1温度设定值,范围4"--60℃运行时段2温度设定值,范围4"-60℃运行时段3温度设定值,范围4"60"(2运行时段4温度设定值,范围4"-60℃运行时段1电机转速设定值,范围30"--400rpm运行时段2电机转速设定值,范围30"---400rpm运行时段3电机转速设定值,范围30"-400rpm运行时段4电机转速设定值,范围30"-400rpm运行时段1时间设定值,0"999小时、0"-'59分钟运行时段2时间设定值,0~999小时、0"--'59分钟

运行时段3时间设定值,O~999小时、0"-'59分钟

运行时段4时间设定值,0~999小时、0"-59分钟

总时间设定值,0~9999小时、0~59分钟unsignedshortunsignedshortunsignedshortunsignedshortunsignedshortunsignedshortunsignedshortunsignedshort1FH、20H21H、22H23H、24H

25H

26H

27Hunslgne,dshortunsignedshortunsignedshortunslgnedshortunsignedshortunsignedshort

unsignedshort

unsignedshort

unstgnedshort

unsignedshort

unsignedshort运行湿度设定值,范围30"--'98%除霜时间设定值,00"-15分钟除霜间隔设定值,00"-99小时断电后,再上电是否自动运行,0:不运行,1:运行28H29H、2AH、2BH2CH、2DH、2EH2FH30H实时时钟的年、月、日设定值,用于日期调整实时时钟的时、分、秒设定值,用于时间调整数据打印时间设定值,0"-'360小时数据打印间隔设定值,10"---60分钟33

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

蔓婴兰婴!垄型璺塾壁堡丛薹±坚鲤!坐塑堡笪垣堂堡蔓堑壹塑墼型些堂盐皇壅里425Modbus协议实现函数

通过RS485接口用Modbos协议实现两个MCU通信的主要函数及功能如表4-6所示。[www.61k.com)

表4-6Modbus协议实现通信的主要函数

函数名功能

read485缸regadd0通过ModbllS协议读取单个寄存器的值。实现03功能码。read485m(regaddr,rcgnum)通过Modbus协议连续读取多个寄存器的值。实现04功能码。write485x(regaddr,regdata)通过Modblls协议写单个寄存器的值。实现06功能码。

write485m(mgaddr,regnum)通过Mo曲lls协议连续写多个寄存嚣的值。实现16功能码。Crcl6(+dp,Ien)通过Modbus协议通信时cRcl6校验值计算程序。

4.3Modbus协议通信测试

由于PC机没有RS485接13,因此对Modbus协议通信测试时,将MCU串行接口信号引出来,用外加的RS232模块转换成RS232信号,然后联到PC机的串行口,在PC机上用串口调试程序抓取通信数据,通过对抓取数据的观察和分析,可以知道Modbus协议通信是否正确。通信测试连接示意图见图4-3,其中人机交互子系统是通信的主机,测控子系统是通信的从机,从机编号设定为01。

—●I?_咔

库弭::步≮’啤4—『磊。?钒…一

图4-3Modbus协议通信测试连接示意图

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

茔士墅!坐!堡堡塑堡坚塑翌堕整塑塞型壁塑蔓量壅里璺巴至!旦!墼型堡墼堂堂盐

对Modbus协议03功能码测试的PC机屏幕截图如图4-4所示

图4-403功能码*I试的PC机屏幕截圈

图中串口调试程序的窗口内抓取到了13个字节的数据,数据为十六进制数。(www.61k.com]前面6个字节数据01H.03H,01H,01H,31H,88H是Modbus协议主机AT89C55向从机LPC2368发出的03功能读取当前温度值消息帧,各字节数据含义见表4.7。

表4.703功能主机读取当前温度值消息帧说明

数据及顺序含义

叭从机号们H.

03功能码03H。

0l当前温度值寄存器地址01H。

01读取字节数为1字节。

数据帧16位CRC校验值,低字节在前,高字节在届。

88因此16位CRC校验值为8831H.

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

后面7个字节数据01H,03H,02H,96H,00H,D7H,E4H是从机LPC2368向主机AT89C55回送的当前温度值消息帧,各字节数据含义见表4.8。(www.61k.com]

表4—8

数据及顺序

0103功能从机回送的当前温度值消息帧说明含义从机号01H。

61阅读请您转载分享:

功能码03H。

数据字节数为2字节。0302

96

00

D7

FA当前温度值,低字节在前,高字节在后。温度值数据为0096H=150。实际温度有1位小数,需要除以10,即150÷10=-15.0℃。数据帧16位CRC校验值,低字节在前,高字节在后。因此16位CRC校验值为EAD7H。

对抓取的通信数据分析表明,Modbus协议的功能码和通信是正确的。其它功能码的测试与03功能码的测试过程相同,在这里就不再一一列出。

4.412C总线协议分析

12C总线概述4.4.1

12C(Inter-IntegratedCircui0总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围4设备【37】。12C总线产生于20世纪80年代,最初是为音频和视频设备开发的,如今主要在服务器管理中使用,其中包括单个组件状态的通信。例如管理员可对各个组件进行查询,以管理系统的配置或掌握组件的功能状态,如电源和系统风扇。可随时监控内存、硬盘、网络、系统温度等多个参数,增加了系统的安全性,方便了管理。

12C总线最主要的优点是其简单性和有效性。由于接口直接在组件之上,因此12C总线占用的空间非常小,减少了电路板的空间和芯片管脚的数量,降低了互联成本。总线的长度可达25英尺,并且能够以10kbps的最大传输速率支持40个组件。12C总线的另一个优点是,支持多主控,其中任何能够进行发送和接收的设备都可以成为总36

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计线的主控。(www.61k.com)一个主控能够控制信号的传输和时钟频率。当然,在任何时间点上只能有一个主控【3引。

4.4.212C总线工作原理

12C总线是由数据线SDA和时钟线SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100kbps。各种被控制电路均并联在这条总线上,但就像电话机一样只有拨通各自的号码才能工作,所以每个电路和模块都有唯一的地址,在信息的传输过程中,12C总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPU发出的控制信号分为地址码和控制量两部分,地址码用来选址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。

12C总线在传送数据过程中共有三种类型的信号,它们分别是:开始信号、结束信号和应答信号。

开始信号:SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。

结束信号:SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。

’应答信号:接收数据的IC在接收到8bit数据后,向发送数据的IC发出特定的低电平脉冲,表示己收到数据。CPU向受控单元发出一个信号后,等待受控单元发回一个应答信号,CPU接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,则判断为受控单元出现故障。

目前有很多半导体集成电路上都集成了12C接口。带有12C接口的单片机有CYGNAL的C8051FOXX系列、PHILIPSP87LPC7XX系列、MICROCHIP的PICl6C6XX系列等。很多外围器件,如存储器、监控芯片等也提供12C接口。4.4.312C总线操作

12C规程运用主/从双向通信。器件发送数据到总线上,则定义为发送器;器件接收数据,则定义为接收器。主器件和从器件都可以工作于接收和发送状态。总线必须由主器件(通常为微控制器)控制,主器件产生串行时钟(SCL)控制总线的传输方向,37

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现并产生开始和停止条件‘391。[www.61k.com]

12C总线上的所有的操作都是由SCL和SDA两条线上的状态来确定的,共有四个状态:开始、停止、数据、应答。图4.5描述了四个状态的时序图【4们。

s队卞i:本豳曲_i斤s跣甫一殄再一L.jL..:L.-;Lo.L..:L.j

图4-512C总线操作时序图

SDA线上的数据状态仅在SCL为低电平的期间才能改变,SCL为高电平期间,SDA状态的改变被用来表示开始和停止条件。

在起始条件之后,必须是器件的控制字节,其中高四位为器件类型识别符(不同的芯片类型有不同的定义,EEPROM一般为1010),接着三位为片选地址或片内页面号,最后一位为读/写位,1表示读操作,0表示写操作。EEPROM控制字节格式【41】如图4.6所示。

图4_612C总线控制字节格式

1.写操作

写操作有字节写和页面写(连续写)两种操作,对于页面写根据芯片一次可装载的字节不同有所不同。字节写和页面写操作的格式如图4.7和图4.8所示。

图4.7字节写格式

图4-8页面写格式38

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计

2.读操作

读操作有三种操作:当前地址读、随机读和连续读。[www.61k.com]三种读操作的格式如图4-9、图4.10和图4.11所示。

图4-9当前地址读格式

图4.10随机读格式

图4-1l连续读格式

4.512C总线操作实现函数

在CTIS控制器中,采用串行EEPROM存储器AT24C16来存放设定的工作参数,该存储器通过12C总线与MCU通信,存储容量为2048×8位,掉电可保存数据10年以上,为8脚的SOIC封装。由于AT89C55没有12C总线,因此用两个I/O引脚通过软件编程模拟12C总线时序来实现AT89C55对AT24C16的读写。

61阅读请您转载分享:

AT24C16的器件类型识别符为1010,其内部存储单元分为8个页面,每个页256字节。实际使用时需要严格按照12C总线的操作时序分别编写字节写、连续写、当前地址读、随机读和连续读五个函数,使用这五个函数就可以实现对AT24C16的读写。

用MCU的I/O引脚模拟12C总线时序实现对串行EEPROM存储器AT24C16读写的函数如表4-9所示。39

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

表4-9实现AT24C16读写的函数

函数名功能

12C_startO模拟12C总线开始状态。(www.61k.com]

12C_stop0模拟12C总线停止状态。、

ack0模拟12C总线应答状态。

no_ack0模拟12C总线不应答状态。

chcck_ackO12C总线应答状态检测。

write._byte(ch)写命令或地址到AT24C16。

read24cl6(address)读AT24C16指定地址数据(字节读)。

write24c16(address,ddata)写数据到A1r24C16的指定地址(字节写)。

pagewrite(waddr,n,?daddr)连续写r1个字节到AT24C16中。

pageread(raddr,n,*daddr)连续从AT24C16中读n个字节。

4.6人机交互子系统程序设计

人机交互子系统的程序主要有:

AT89C55系统初始化程序、人机交互

主循环程序、定时中断处理程序、键

盘扫描程序、LCD操作程序、中文菜

单显示程序、参数设置程序、12C总线

读写EEPROM程序iModbus总线通

信程序、字符和汉字点阵字库。

4.6.1AlT89C55系统初始化程序

AT89C55系统初始化程序流程如

图4.12所示。该程序完成AT89C55

系统各变量和状态标志的初始化,串

行口和定时器初始化,LCD显示器初

始化。

图4.12AT89C55系统初始化程序流程图

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计4.6.2人机交互主循环程序

人机交互主循环程序流程如图4-13所示,该程序完成人机交互的功能,主要包括键盘扫描,设备的启/停控制,显示屏幕开/关控制,背光自动开/关,实时测量值的读取与显示,菜单程序及参数设置,声光报警处理。[www.61k.com]

图4?13人机交互主循环程序流程图4l

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章crIs控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现4.6.3AT89C55定时中断处理程序

AT89C55定时中断处理程序流程如图4.14所示。(www.61k.com)AT89C55定时器的定时时间设为50ms,定时中断处理程序主要完成看门狗复位;50ms、200ms、250ms、500ms、1s时间标志位的置1;故障计时和报警处理。

图4-14AT89C55定时中断处理程序流程图42

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章C1rIS控制器软件设计4.6.4参数设置菜单处理程序

参数设置菜单处理程序流程如图4.15所示。(www.61k.com)菜单处理包括菜单切换,选项的上下移动和闪烁控制。当10秒钟没有选择操作,程序自动退出菜单显示,返回运行的主屏幕。

图4-15参数设置菜单处理程序流程图43

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现4.6.5参数设置操作程序

参数设置操作程序流程如图4.16所示。[www.61k.com]

型巧型珂,巧型巧型巧型巧,功_珂型

温转定湿除复时打数

度速时度霜电钟印据

设设设设设设设设导

置置置置置置置置出

操操操操操操操操操

作作作作作作作作作

弋弋弋弋丁弋弋弋

厂、

(退出设置操作,返回设置项菜单

\/)

图4.16参数设置操作程序流程图

4.6.6温度设置操作程序

在参数设置操作中,温度设置操作、转速设置操作、定时设置操作、湿度设置操作、复电设置操作、时钟设置操作的程序流程类似,因此这里只给出温度设置操作程序的流程图,如图4.17所示。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计

图4.17温度设置操作程序流程图

4.6.7除霜设置操作程序

除霜设置操作程序流程如图4.18所示。[www.61k.com]打印设置操作程序的流程与除霜设置操作程序流程类似。45

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

图4—18除霜设置操作程序流程图

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计4.6.8数据导出操作程序

数据导出操作程序流程如图4.19所示。(www.61k.com)数据导出操作可以将存在控制器内部的系统运行参数和测量数据通过USB接口存入U盘中。

(进入数据导出操作)伍入数据导出操拓、\/

61阅读请您转载分享:

向主机发送数据导出命令

显示“数据正在导出,等待……”否◇‘

是I』

显示“数据导出完毕”

停留3秒钟

(丰出设置操作,返回设置项菜t)

图4.19数据导出操作程序流程图

4.6.9点阵字符和汉字显示

屏幕显示字符和汉字需要点阵字库的支持,为了节省存储空间,CTIS控制器中定义了专用的小字库。字符有8×8和16×8两种点阵字库,汉字是16×16点阵宋体字库,字库中只包含控制器中用到的字符和汉字点阵。

12864C点阵LCD显示器将屏幕分为左右两个64X64点阵的区域,左右两个区域分别由一个控制器控制,并且点阵是纵向排列的【421,而从计算机字库中提取出来的字符和汉字点阵是横向排列的,因此需要将点阵数据进行横~纵转换后才能使用‘431。

8X8点阵的字符有12个,采用数值编码,点阵数据存放在程序代码的chr8[]字符表中,显示时按编号调用即可。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

16X8点阵的字符有28个,也采用数值编码,点阵数据存放在程序代码的chardotrJ字符表中,显示时也是按编号调用即可。[www.61k.com]

16X16点阵的汉字有53个,采用拼音作为汉字编码,每个汉字的点阵数据分别存放在以其拼音为名称的字符表中,显示时按拼音调用即可。

上述三种点阵字符及编码参可见附录B。

4.7测控子系统程序设计

测控子系统的程序主要包括LPC2368系统初始化程序、测控主循环程序、温度测控程序、超温处理程序、转速测控程序、除霜控制程序、定时中断处理程序、外部中断处理程序、串行中断处理程序等。

4.7.1LPC2368系统初始化程序

LPC2368系统初始化程序流程如图4.20所示。

TO定时器初始化

T1定时器初始化

RTC实时时钟初始化

外部中断初始化

串行IZ]初始化

调用断电前的运行

参数并设运行标志调用A段参数并设待机标志

rI

图4.20LPC2368系统初始化程序流程图48

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章C11S控制器软件设计4.7.2测控主循环程序

测控主循环程序流程如图4.21所示。[www.61k.com)

图4.2l测控主循环程序流程图49

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现4.7.3温度测控程序

温度测控程序流程如图4.22所示。(www.61k.com)

图4.22温度测控程序流程图

4.7.4超温处理程序

超温处理程序流程如图4.23所示。

进入超温处理

置温度稳定状态/婪震爹岁\/

燃>一I是

设置正负4度,一一一一

翁验≯奎三!少l是

执行超温处理动作

退出超温处理』是

图4-23超温处理程序流程图

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS控制器软件设计4.7.5超速处理程序

超速处理程序流程如图4.24所示。(www.61k.com)

4.7.6除霜控制程序

除霜控制程序流程如图4.25所示。

进入超速处理

判断是耍达到设\,查置速度稳定状态,/进入除霜控制◇参‘是否按环境温度和设置温\/度判断是否进行化霜

塞度是否超出\设置正负5转,/否

\/

否大于2分钟/\/

.【是

执行超速处理动作超速时间是、\、否根据设置温度调用化霜参数执行化霜动作

退出超速处理退出除霜程序

图4.24超速处理程序流程图图4.25除霜控制程序流程图

CTIS控制器系统软件实现的主要函数及功能参见附录C。

4.8系统人机交互界面

本节给出CTIS控制器人机交互的操作界面举例及说明。LCD屏幕有系统运行主屏幕、系统设置菜单屏幕和参数设定屏幕三级。

4.8.1系统运行主屏幕系统上电复位后和正常运行时,显示第一级的系统运行主屏幕,如图4.26所示。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现

图4.26系统运行主屏幕

“系统状态’’位置显示的是“待机"、“运行”、“暂停”、“故障)【X"四种系统状态之一。[www.61k.com)其中Xx为故障代码,有01"--10十种。系统状态左边小字显示的是实时时钟。

运行时如果30秒钟没有按下任何键,显示屏的背光自动关闭;当再按任意键后,背光自动点亮。

4.8.2系统设置菜单

进行系统设置时,首先进入第二级的系统设置菜单,如图4.27所示。

图4.27系统设置菜单

系统设置菜单有三个屏幕。当前可设置的项会闪动提示,按“减少”键可以向下移动当前设置项,按“增加"键可以向上移动当前设置项;当移动到最下面一项时,就转到下一屏;当移动到最上面一项时,就转到上一屏;当前设置项闪动时,按“确认’’键可进入该项参数的设置;在设置菜单屏幕时如果10秒钟没有按键,自动返回到第一级的运行主屏幕。52

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第四章CTIS撞制墅这壁塑盐4.8.3参数设定屏幕

进行具体参数设定或操作时,进入第三级的参数设定屏幕,图4-28所示是温度设定屏幕。[www.61k.com)

61阅读请您转载分享:

图4.28温度设定屏幕

温度按照A—B—C—D四段的顺序进行设置;在每段中按“增加”或“减少"键改变温度值(范围4,---60"C),长时间按住“增加"或“减少"键不放可以快速改变数值;按“确认"或“启/停"键结束本段设置进入下一段设置;没有按键时,当前设置值闪烁;当设置到温度D时,按“确认一键将保存设置参数并退回到设置菜单‘屏幕,按“启/停"键将放弃(不保存)设置参数并退回到设置菜单屏幕。

设置菜单屏幕中的其它8项参数设定或操作与温度设定屏幕类似,这里就不再一一列出。

4.9本章小结

本章结合CTIS控制器的实际需求对Modbus协议功能码进行了裁减,定义了相应的功能码、各功能码数据帧格式以及寄存器地址,给出了通信时CRC校验码的计算方法和Modbus协议通信的测试方法,分析了Modbus协议03功能码通信的测试实例。通过分析gc总线协议,给出了MCU对12C总线串行EEPROM存储器读写的方法及实现函数。

本章还给出了CTIS控制器系统软件设计,包括人机交互子系统、测控子系统各软件模块的流程图。人机交互子系统软件流程有:AT89C55系统初始化程序流程、

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第四章CTIS控制器软件设计基于Modbus协议的恒温振荡培养箱控制器设计与实现人机交互主循环程序流程、定时中断处理程序流程、键盘扫描程序流程、屏幕菜单处理程序和参数设置操作程序流程;测控子系统软件流程有:LPC2368系统初始化程序流程、测控主循环程序流程、温度测控程序流程、超温处理程序流程、超速处理程序流程、除霜控制程序流程。[www.61k.com]最后给出了系统操作和运行界面屏幕显示举例。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第五章调试与体会

第五章调试与体会

本章给出了软硬件调试步骤和方法,分析了软硬件实现过程中出现的问题,给出了解决措施以及项目实现过程中的一些体会。(www.61k.com)希望能为同行提供一些借鉴和参考。5.1调试

硬件电路设计完成后,要用电路板设计软件将电路转换成相应的印刷电路板(PCB板)图,并交给专业厂家加工成PCB板。

调试时要先从硬件开始,首先需要对元器件进行测试和焊接,接下来进行各模块电路测试,模块电路测试时需要编制相应的测试程序。

硬件电路调试好之后,才能在PCB板进行软件调试,首先进行各功能模块软件的调试,然后进行总体软件的调试,最后进行整个系统的调试。

对硬件电路的调试,要从元器件焊接开始,按照一定的计划和步骤去做,循序渐进,分步焊接和测试,不能一次将所有元器件都焊接上去后再去调试。这样做可以及时发现问题,有效地分析和解决问题,才能高效、正确地将电路调试好。否则,即使是一个小问题也可能需要花费大量的时间才能得到解决,有时甚至因无法定位问题产生的原因而导致问题无法解决,从而使整个电路板报废。

根据个人在本项目实现过程中获得的经验教训,将调试步骤与方法总结如下:

①在焊接分立元件(如电阻、电容、LED、二极管等)之前,要用万用表先对它们进行测量,判断元件是否损坏,确定型号和参数是否正确,然后再将它们焊接到电路板上去。

②要最先焊接电源部分的元件,并通电对电源电压进行测量,确保电压正确无误。如果万一出现电压不正确的情况,由于其它元件都没有焊,因此不会导致其它元件的损坏。

③电源正常后,接下来焊MCU及其最小系统所需要的元件。然后通电判断MCU是否正常工作,可以用示波器观察晶振是否起振来确定;对有LED指示灯的系统,也可以编写一个控制指示灯闪烁的测试小程序下载到MCU中运行,通过观察指示灯是否闪烁来判断MCU是否能正常工作。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第五章调试与体会基于Modbus协议的恒温振荡培养箱控制器设计与实现

④在MCU调试好之后,就可以焊接其它各部分的元件了。[www.61k.com)对MCU之外各部分外围电路的调试,一般要结合软件进行测试,这样在调试硬件的过程中也编制和调试了相应硬件模块的软件操作函数,为软件设计打好基础。

调试MCU外围电路及相应软件时,一般按如下顺序进行:

①显示器部分。显示器要先调试,显示器调试好以后,对其它电路的调试可以编程将状态或结果显示出来,通过观察就可以判断所调试的电路是否正常。

②按键部分。可以将不同按键的值用显示器显示出来,方便按键程序模块的调试。③其它电路调试。显示器和按键之外其它电路的调试,没有严格的顺序,只要一部分一部分逐个调试正确就可以了。

5.2遇到的问题及解决

下面是本项目实现过程中遇到的问题,以及对问题的分析过程和解决措施。

①问题1:通过12C总线向串行EEPROM连续写入数据时,有些数据不正确。问题分析:先对照12C总线操作时序检查写入程序,是符合操作时序的,并且因大部分数据写入是正确的,可以排除写入程序操作不正确的可能。由连续写入数据时有数据不正确的现象,同时考虑到数据送入EEPROM后,在EEPROM内部真正完成写入存储单元还需要一定的时间,可能是因为连续写入数据时,各数据间的时间间隔不够导致一些数据丢失而没有写入。

解决措施:基于上面分析的可能原因,解决的方法是连续写入数据时,各数据之间给出足够的时间间隔。具体措施是在连续写入数据的程序中,每写入一个数据,插入一段软件延时。修改写入软件后,对写入程序进行测试,即先将一些数据连续写入EEPROM的存储单元中,然后再将这些存储单元中的数据读出来显示在屏幕上,可以观察到写入与读出的数据是一致的,问题得到了解决。

②问题2:通过ADC对温度进行测量时,温度值有波动,精度较差。

问题分析:影响AD测量稳定性和精度的因素主要有系统电源的稳定性即纹波和瞬间脉冲干扰,外界的电磁干扰。对电源的纹波可以在系统电源输入端和每个集成电路芯片电源引脚旁增加滤波电容来减小或消除;而对于有大功率电器启/停或有电机运行的环境,电源的瞬间脉冲干扰和电磁干扰无法消除,只能在测量时用软件做适当

61阅读请您转载分享:

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第五章调试与体会的处理。[www.61k.com)

解决措施:系统电源输入端和每个集成电路芯片电源引脚旁加滤波电容在电路设计时已经作了考虑,因此只能在软件上做适当处理。采用的方法是对AD测量进行中值滤波和均值滤波。中值滤波是每采样一个数据时,进行三次连续的AD转换,在三个测量数值中取中间一个数作为采样值,它可以减小或消除干扰引起的测量波动。均值滤波是每采样一个数据时,进行多次连续AD转换,一般大于100次,然后用这些多次测量的平均值作为采样值,它可以减小由瞬间干扰引起的误差和波动,提高测量的稳定性和精度。实践证明,在软件上同时采用这两种滤波方法,具有很好的效果,问题得到了解决。

③问题3:系统运行时如果出现通信故障,报警声音会及时响起,但黄色故障指示灯点亮和故障码的屏幕显示要过一段时间才出现。

问题分析:经过对通信程序、故障报警程序、故障指示灯显示程序、故障码屏幕显示程序的查找和分析,发现通信时数据出错或接收不到应答数据时,会进行多次重新尝试,如果还是出错或接收不到应答数据时才能确认通信有故障,也就是说通信故障的确定需要一定的时间进行多次尝试,而且连续传输多个数据帧时会多次重复这样的确认过程。程序对故障的处理放在了不同的地方,其中声音报警是在定时中断程序申处理的,故障指示灯和故障码屏幕显示是在主循环程序中处理的,因此造成对通信故障的报警声与显示信息时间不一致。

解决措施:把故障指示灯和故障码屏幕显示的处理程序都放到定时中断程序中,这样既能及时提示故障,又使得声音、指示、显示的时间一致,问题得到解决。

④问题4:对按键的识别既要防止一次按键多次读取,又要能够在按住不放时可以作为连续按键,而这两种情况是矛盾的。

问题分析:对按键的识别,一般要防止一次按键多次读取,也就是说如果按下一个键比较长时间然后放开,应该认为是一次操作,而不能多次读取同一个按键进行多次操作。这种情况的处理是在按键识别程序中检测到键被按下时,然后再去检测键的释放,只有当按下的键被释放时,才确认是一次按键,才能执行一次相应的操作。而在本项目的控制器上,由于没有设置数字键,在参数输入时用增加/减小两个键操作,因此在增加/减小键按住不放时要自动多次读取,使输入数值连续增/减,输入过程类似于电子表时间、日期的调整。这就与前面的按键识别处理产生了矛盾。57

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第五章调试与体会基于Modbus协议的恒温振荡培养箱控制器设计与实现

解决措施:只能将按键的这两种处理方式分别编制两个不同的按键识别程序,而不可能用一个程序来处理。[www.61k.com]在不同的输入情况下,调用不同按键的处理程序,按此方法改进按键处理程序后,问题得到解决。

5.3体会

通过本项目的设计与实现,使本人对嵌入式系统的开发有了更深刻的了解和认识,也获得一些有用的经验。下面是项目实现过程中个人的一些体会,希望能够为同行提供一些有用的参考。

①明确系统需求,合理制定系统设计方案

在需求分析和系统方案设计阶段,应尽可能多做一些调研,了解行业目前的现状,相关技术的发展,明确产品的定位。对系统的需求进行充分、详细的分析,先制定系统的整体方案,确定采用的技术,然后才可以对各部分具体模块进行进一步的设计。

②保证电路设计的正确性与合理性

对硬件的设计,必须保证在原理正确的基础上进行。有些电路也可以使用一些电路仿真软件进行仿真。对于某些关键电路可以先在实验板上搭建并进行测试。在设计PCB时,要注意元件的布局,合理的布局可以使得布线变得简单。布线时可以先用手工固定一些关键的走线,如地线、电源线、易产生干扰的时钟线等;然后再采用自动布线完成剩余走线。自动布线之后,还要对一些不合理的走线用进行手工调整。另外,设计电路板时还要添加一些测试点,方便调试和测量。

③充分考虑系统的抗干扰能力

电磁干扰会影响系统运行和测量的稳定性,因此系统的抗电磁干扰能力相当重要。尤其在嵌入式系统中,其工作环境往往有电磁干扰源存在,很容易使MCU的运行或数据测量受到干扰。提高电磁抗干扰能力主要通过正确选用元件、合理接地、增加去耦电容、屏蔽和优化电路等方法来实现。在选用元件时,尽量选择可靠性高的元件;对容易产生电磁辐射的器件应做好接地和屏蔽工作:在设计电路板时,也要合理地布局、布线,尽量使那些易受干扰的器件远离干扰源。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第五章调试与体会

④软件设计要有规范

为了便于程序的阅读、维护和有效复用,程序的规范很重要。[www.61k.com)合理的注释有助于阅读和理解程序;程序设计中要尽量使用函数或子程序,这不仅使程序结构清晰,也便于日后的维护;尽量将各个功能分割成不同的子模块,便于代码的重复利用,在调试时出现问题后,也便于寻找和分析问题所在。另外,软件编制过程中要编写相应的设计文档,对软件修改过程进行记录,理清设计的整体思路。

⑤调试要有计划有步骤

对硬件电路的调试,要从元器件焊接开始,按照一定的计划和步骤去做,循序渐进,分步焊接和测试,不能一次将所有元器件都焊接好再去调试,这样可以及时发现问题,有效地分析和解决问题,才能高效、正确地将电路调试好,达到和完成设计目标。

5.4本章小结

本章总结了CTIS控制器软硬件调试步骤和方法,这些步骤和方法对其它嵌入式系统的开发也有一定的借鉴和参考价值。针对软硬件调试过程中出现的4个主要问题,给出了问题的分析过程和解决的措施。最后交流了项目实现过程中的一些体会。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第六章总结与展望基于Modbus协议的恒温振荡培养箱控制器设计与实现

61阅读请您转载分享:

第六章总结与展望

6.1总结

本文基于Modbus协议采用双MCU结构设计实现了一个高性能CTIS控制器,解决了采用单MCU集中控制时数字信号传输距离较长易受外界电磁干扰而严重影响系统稳定性的问题,解决了双MCU结构系统中MCU之间数据通信的可靠性和数据内容快速准确解析的技术难点。[www.61k.com)基于Modbus协议通信的双MCU结构CTIS控制器具有可靠性高、实时性好的优点。

本文的创新点如下:

①提出用双MCU结构实现高性能CTIS控制器的新架构,提高了系统的可靠性和实时性。

②结合控制器的实际需求对Modbus协议的功能码进行了裁减,用简化的功能代码集实现了系统内两个MCU间的可靠通信,降低了通信处理程序的复杂性。

③与通常将Modbus协议用于不同工业控制器之间构成工业现场总线控制系统的应用不同,本文将Modbus协议用于一个控制器内,为两个MCU的可靠通信提供保障,为Modbus协议开拓了一个新的应用领域。

本文的主要工作总结如下:

①根据CTIS控制器系统的功能需求和技术指标,设计了系统总体方案。采用双MCU结构,用Modbus协议保证可靠通信。将控制器分为人机交互子系统、测控子系统、输入输出接口三个组成部分。对MCU及外围器件进行选型,选定了软硬件开发环境。

②在选定了MCU及外围器件的基础上,完成了系统硬件设计和调试。给出了硬件各组成部分电路模块的详细设计。

③针对CTIS控制器数据传输的特点,本文在深入分析Modbus通信协议在基础上,对Modbus协议定义的功能代码进行了裁减,构建了既适合本项目CTIS控制器需求又具有一定通用性的简化Modbus功能代码集,给出了各功能消息帧格式和寄存

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现第六章总结与展望器地址的详细定义,实现了两个MCU之间实时、可靠通信。(www.61k.com)并给出了Modbus协议通信的测试方法和测试实例。

④在详细分析12C总线协议的基础上,给出了经MCU的I/O口用软件模拟12C总线时序的编程方法,实现了MCU对串行EEPROM存储器AT24C16的读写,节省了I/O1:3线,可靠保存了系统运行参数。为没有12C总线的MCU用I/O口线实现12C总线操作提供了一定的参考。

。⑤完成了系统软件的设计和调试。给出了软件各程序模块实现的流程图。

⑥最后,对系统实现过程中软硬件调试的步骤和方法进行了总结,给出了软硬件调试过程中出现的几个主要问题、原因分析、解决措施以及一些体会。

一个好的开端是成功的一半。做一个项目时,在硬件电路设计和软件设计之前首先要有计划,在设计过程中要遵循一定的方法和原则,善于学习别人的经验,总结自己的经验教训,最终才能取得好的结果。

CTIS控制器在设计完成之后,经过一段时间的测试、改进,其功能和指标均达到了设计要求,实现了高性能、易操作的目标。目前该系统已经应用在苏州捷美电子有限公司三种型号的CTIS产品中(产品实物照片参见附录D),经测试和实际运行表明、,本文的控制器性能稳定、可靠,在工业控制领域有着较好的应用前景。

6.2展望

本项目控制器在目前已经实现的功能基础上还可以有进一步改进和提高的地方。比如测控微控制器LPC2368的以太网和CAN总线接口还没有充分利用起来,后续可以增加基于以太网或CAN总线通信的程序模块,使得控制器具有联网功能,可以构建分布式或远程测控系统,以开拓更广的应用领域。

另外,还可以对ModbusTCP协议进行分析和研究,在CTIS控制器上开发基于ModbusTCP协议通信的程序模块,用ModbusTCP协议构建分布式或远程测控系统。

另外,在目前的系统中,用Modbus协议的RTU模式进行通信时,需要使用CRCl6循环冗余校验码进行校验。在本文Modbus协议实现部分,给出了计算CRC码的方法和步骤,在软件中也编制了相应的函数。这种用软件计算的方法虽然节省程序存储器空间,但需要一定的计算时间;如果要进一步提高程序运行速度,可以采用查表的6l

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

第六必结与展望~——~——基王Modbus协议的恒温振荡培养箱控制器设计与实现方法,但需要占用比较多的程序存储器空间。(www.61k.com]

远程控制和联网控制将是嵌入式控制的一个发展方向,本项目设计的控制器在设计时就考虑NT今后的发展,预留了远程控制和联网控制的硬件接口,具有一定的可扩展性,可以适应技术发展的需求。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现参考文献

参考文献

【1】现场总线产生发展现状.

http://帆聊.gkong.com/gkong—bbs/dispbbs—a11.asp?id=110452

【2】郑文波,阳宪惠.现场总线技术综述【J】.机械与电子.1997,05.

[3]李正军.现场总线及其应用技术【M】.北京:机械工业出版社,2005.

【4】潘长清.基于Modbus协议的嵌入式数据通信系统研究【D】.北京交通大学,2

【5】张民.浅谈现场总线及发展前景【J】.青海科技.2005,01:55-57.

【6】6现场总线的现状.http://baike.baidu.com/view/592856.htm

【7】biodbus通讯协议.

ht007.12.tp://www.cechinamag.com/Article/html/2007—01/200712084544.htm

【8]大步前进的Modbus.‘

http://www.cechinamag.com/Article/html/2005—10/200511281032332f66a.htm

61阅读请您转载分享:

【9】周光宇,高为民,贺卫红.基于MODBUS协议的串行通信的设计与实现….湘南学院

学报.2006,02:62-65.

【10】张琼,雷鸣,王铁.MODBUS通讯协议在串行通讯的应用【J】.科技创新导报.2008,18:

30.

【11】张益南,王文海.嵌入式Modbus/TCP协议的研究与实现【J】.组合机床与自动化加

工技术.2008,02:26-29,33.

【12】Modbus正式成为工业通讯领域现场总线技术国家标准.

http://article.cechina.cn/2008一04/2008417070945.htm

[13】张道德.单片机接口技术(C51版)[M】.北京:中国水利水电出版社,2007.

【14】赵学军.RS485总线测控模块的MODBus扩展协议设计【J】.自动化与仪表.2007,02:

37-39.

【15】苏州和美光电科技有限公司.12864CLCD显示器用户手册【z】.苏州和美光电科技

有限公司.2004.

【16]戴佳,戴卫恒.51单片机C语言应用程序设计实例精讲【M】.北京:电子工业出版

社,2007.63

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

参考文雕基于Modbus协议的恒温振荡培养箱控制器设计与实现

【17】赖麒文.8051单片机C语言环境实务与设计【M】.北京:科学出版社,2002.

【18】夏路易,石宗义.电路原理图与电路板设计教程Protel99SE【M】.北京:北京希望

电子出版社,2002.

【19】周立功单片机发展有限公司.LPC23XX用户手册【Z】.www.zlgmcu.com

【20】PhilipsSemiconductors.LPC2364/6/8/78

www.semiconductors.philips.comUsermanual【Z】.2006.

【21】MCU基本技术原理与发展历史.

http://www.eeworld.com.cn/mcu/bkzs/200708/681.html

【22】ATMELCorporation.AT89C55WDDataSheet【Z】.1921洲ICRo.3/05,2005.

【23】朱小襄.MODBUS通讯协议及编程【J】.电子工程师,2005,07:42-44,55.

【24】潘洪跃.基于MODBUS协议通信的设计与实现….计量技术,2002,04:35-36.

【25】李飞.基于Modbus的电磁流量计通讯系统的研究【D】.浙江大学,2006.06.

【26】祝木田,师勇.ModBUS协议通讯的应用【J】.微计算机信息,2004,06:9-10.

【27】李娜.基于MODBUS协议的智能仪表的设计【D】.北京邮电大学,2008.06.

【28】王建平,张茂林,徐其林.Modbus协议和uSB接口在工业控制上的应用【J】.合肥工

业大学学报(自然科学版).2008,01:68-72.

【29】黄育和,程韬波.基于ModbusRTU协议的数字智能模块的设计【J】.机电工程技术.

2007,05:38—40,58.

【30】MODICON

1996.Inc.ModbusProtocolReferenceGuide【Z】.PI圳BUs-300Rev.J,June

【31】孙月平,赵德安,曹莉.基于Modbus的智能工业控制器监控系统的设计【J】.微计算

机信息.2008,24:41-43.

【32】文小玲,易先军,钟晓霞.基于Modbus协议的实时温度监控系统开发[J】.微计算机

信息.2008,24:104-105.

【33】朱懿,蒋念平.ModBus协议在工业控制系统中的应用….微计算机信息.2006,22:

118-120.

【34】黄琼.基于Modbus协议的通信控制系统的设计【J】.自动化技术与应用.2008,01:

42-44.

【35】向阳,徐景涛,董鹏永.基于MODBUS协议的CRC编码研究【J】.太原科技.2007,09:40一41.

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现参考文献[36】亓晓彬,杨宜民,张有松.一种基于Modbus协议的嵌入式工控系统人机交互的设计

【J】.广东工业大学学报.2008,01:62-65.

【37】黄建兵,段明亮.I2C总线及其在MCS-51单片机系统中的应用【J】i陕西科技大学学

报.2008,02:103-109.

【38】贾焕,李长青,安葳鹏.基于I2c总线的通用存储器Ic卡与单片机接口技术【J】.河

南理工大学学报.2005,08:296-300.

f39】王出航,狄婧.I2C总线存储器的控制方法[J】.长春师范学院学报(自然科学版).

2008,08:30—32.

【40]周立功单片机发展有限公司.I2C总线规范【Z】.WWW.zIgmcu.tom

【41】深圳市华胄科技有限公司.铁电存储器数据手册【z】.删.huazhoucn.com,

WWW.faintron.com.cn

【42】北京精电蓬远显示技术有限公司.内藏KS0108B/HD61202控制器图形液晶显示模

块使用手册【z】.北京精电蓬远显示技术有限公司.

【43】李晶皎,刘天华,丁言镁.液晶显示器的C语言程序设计一Freescale8位微控制器【M】M.科学出版社,2005.

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

堕墨!墨±竺型!塑塑堡些生曼堡蔓堡茎塑墼型量堡盐量壅翌

附录AMCU内部功能模块框图A.1LPC2368内部功能模块框图

61阅读请您转载分享:

蔼薜粤鼍犁早匕蜩南产竺!闷竺!

际j。(www.61k.com]习‘iT“bTOI..。。I。二了9霹i1。耳。。型睦

警霖怒

一陲萋重一

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现附录AA。(www.61k.com)2AT89C55内部功能模块框图

阳■.—口—口-仡,

一O?—-,—U-—叮

67

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

附录B基于Modbus协议的恒温振荡培养箱控制器设计与实现

附录B系统字符和汉字编码

B.18×8点阵字符及编码

8X8点阵字符共12个,括号前面的数字是字符编码,括号内是对应字符:

O(0)、10)、2(2)、3(3)、4(4)、5(5)、6(6)、7(7)、8(8)、9(9)、10(:)、11(一)、12(.)。[www.61k.com]B.216×8点阵字符及编码

16X8点阵字符共28个,括号前面的数字是字符编码,括号内是对应字符:

O(0)、1(1)、2(2)、3(3)、4(4)、5(5)、6(6)、7(7)、8(8)、9(9)、10(.)、11(:)、12(/)、13(%)、14(?)、15(A)、16(B)、17(c)、18(D)、19∞、20(i)、21(m)、22in)、23∽、24(r)、25(1)、26(f)、27(空格)、28㈠。

B.316x16点阵汉字及编码

16X16点阵汉字共53个,括号内是对应汉字的编码:

感(gan)、谢(xae)、您(nin)、使(shi)、用(yong)、精(jing)、骐(qi)、公(gong)、N(si)~产(ehan)、品①in)、温(wen)、湿(shid)、度(du)、转(zhuan)、速(su)、定(aing)、余(yu)、时(shij)、N(jian)、待(d神、机(ji)、运(yun)、行(Xillg)、暂(zan)、停(ring)、故(gu)、障(zlaang)、设(she)、置(zhi)、除(thus)、霜(shuang)、复(柚、电(allan)、打Oa)、印(y岫、数(shu)、据(ju)、导(dao)、出(Chu)、隔(ge)、断(duan)、恢0aui)、的(de)、状(zhuang)、态(tai)、吗(ma)、等(deng)、完(wan)、毕Coi)、是(shi0、否(fou)、"C(esd)。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现附录C

附录C系统函数及功能

C.1人机交互部分函数及功能

函数名功能

Seriallnit0串行口初始化。(www.61k.com)ScanKey0键盘扫描,具有单次按键和连续按键识别。Lcdlnit0LCD显示屏初始化。LcdClear0清除显示屏幕。LcdCommandWL(cmdwl)左半屏幕命令写入。LcdCommandWR(cmdwr)右半屏幕命令写入。LcdDataWL(datwl)左半屏幕数据写入。LcdDataWR(datwr)右半屏幕数据写入。LcdPageL(pagel)置左半屏幕显示的页号。LedPageR(pagcr)置右半屏幕显示的页号。LcdRowL(rowl)置左半屏幕显示的行号。LcdRowL(rowl)置右半屏幕显示的行号。LcdCoIL(coU)置左半屏幕显示的列号。LcdColR(colr)置右半屏幕显示的列号。DispHzl6(zy,pagc,col,*hz)在屏幕指定位置显示一个16×16点阵汉字。DispChr(zy,page,col,nunl)在屏幕指定位置显示一个16X8点阵字符。DispChr8(zy,page,col,sum)在屏幕指定位置显示一个8×8点阵字符。ScreenStart0系统开机屏幕。ScreenRun0系统运行屏幕。SetMenu0参数设置菜单。DoMenu0菜单操作处理。Run0启动系统运行。Pause0暂停系统运行。ScreenSetWD0温度设置显示与处理。ScreenSetZS0电机转速设置显示与处理。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

附录C基于Modbus协议的恒温振荡培养箱控制器设计与实现

(续表)

ScreenSetDSO

ScreenSetSDO

ScreenSetCSO

ScreenSetDDO

ScreenSetSJ0

SereenSetDY0

ScreenSetDC0

ReadRunO

timer00interrupt1using1定时时间设置显示与处理。(www.61k.com]湿度设置显示与处理。除霜设置显示与处理。掉电处理设置。实时时钟调整程序。打印设置程序。系统运行与测量数据导出程序。向测控MCU读实时测量数据。T0定时中断服务程序。

C.2测控部分函数及功能

函数名

cormg_]oo

RTCInitO

ADCInit(ADCClk)

UARTInit(Baudrate)

init_timerO(timerInterval)

init功能I/OD初始化。实时时钟初始化。ADC初始化.串行口初始化。定时器0初始化。定时器l初始化。

Flash存储器初始化。timerI(timerInterval)Flash_Inito

Gpio_Interrupt__Init0

FlO_Set(port,pin)

FIO_Clr(port,pin)

enable_timer(timer_num)

disable_timer(timer_num)

reset_timer(timernum)

ADCDone(ehannelNum)

61阅读请您转载分享:

DAC(val)通用I/0口中断初始化。I/0111置位。J/o口清零。启动定时器运行。禁止定时器运行。定时器复位。~ID测量处理程序。DAC控制程序,控制电机转速。

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现附录C

(续表)

UARTScnd(+BufferPtr,Length)

UARTI串行口数据发送程序。[www.61k.com]Handler0__irq串行口中断服务程序。

实时时钟时间修改程序。RTCSetTime(?data)

RTCGctTime(?data)读取实时时钟时间.

实时时钟中断服务程序。

用Modbus协议从RS485接口收到数据的处理程序。用Modbus协议从R¥485接口发送数据。

Modbus协议CRC16校验码产生程序。

Modbus协议CRCl6校验程序。

一RTC_irq吐irqProcess-l乇¥4850Send(1ength)Build_Cre(幸data,length)CrcCheck(?data,length)

GetWdO

AverageWDO

Average_Envi_WD0

AdjustTemperature0

Run_Motor0

Stop_MotorO

SelSector(sccl,see2)

EraseSector(secI,sec2)

RamToFlash(dst,src,no)

Compare_Dam(dst,src,no)

WriteParaToFlash(?data)采集温度值。计算平均温度。采集并计算环境温度的平均值。温度调节控制程序。启动电机运行。停止电机运行。选择Flash存储器的扇区。擦除Flash存储器的扇区。将内存中的数据写入Flash存储器。比较内存与Flash存储器中的数据。将系统设置参数写入Flash存储器保存。7l

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

&81一l!!!!!!女#自!!女§!§!!d!lt壁g

附录D恒温振荡培养箱实物照片

曛蒸霾弱}L二澄滋一攀鬻鬻鬻I?曩.-i囊瓢逄溪黎露冀熏’;一■,:”?“涮勰}㈣辩露舀蘸麓

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

基于Modbus协议的恒温振荡培养箱控制器设计与实现攻读学位期间公开发表的论文及科研成果

攻读学位期间公开发表的论文及科研成果

【1】陆晓峰.Modbus协议以及在恒温振荡培养箱中的应用.军民两用技术与产品.

2008,10.

【2]陆晓峰,王宜怀,刘晓升.一种FLASH存储器擦写方法.发明专利,已受理,受理号:200810243142.5.

恒温振荡培养箱 基于Modbus协议的恒温振荡培养箱控制器设计与实现

致谢基于Modbus协议的恒温振荡培养箱控制器设计与实现

致谢

衷心感谢我的导师王宜怀教授,由于王老师的悉心指导和严格要求,使我的论文能够胜利完成。(www.61k.com)在此过程中,王老师渊博的知识、严谨的治学态度和忘我的工作精神,使我学会了做研究、做事和做人的态度和方法,这些将使我终身受益。

同时,还要感谢朱巧明老师和陈小平老师以及帮助过我的所有的人,他们在我完成项目和论文的过程中给了我很多的帮助。

其次,要感谢苏州大学Freescale嵌入式实验室为我提供了很好的开发和调试环境。

最后,感谢我的家人,感谢单位的有关领导和同事,感谢他们对我的关心、支持和鼓励。74

61阅读请您转载分享:

三 : 恒温振荡培养箱:恒温振荡培养箱-性能介绍,恒温振荡培养箱-使用说明

恒温振荡培养箱采用微处理器控制,具有监测、控制温度和保护等功能。箱内照明灯可观察箱内培养物。不锈钢内胆。

恒温振荡培养箱_恒温振荡培养箱 -性能介绍

恒温振荡培养箱适用于细菌、霉菌、微生物、组织细胞与培育与保存,植物栽培,育种试验,酶学,酶工程研究,生物制品,药品、疫苗、血液和各种标本的保存与试验。是遗传工程,医学、农业、林业、环境科学、畜牧、水产等生产和科研部门理想的试验设备。
恒温振荡培养箱采用微处理器控制,具有监测、控制温度和保护等功能。箱内照明灯可观察箱内培养物。不锈钢内胆。

恒温振荡培养箱_恒温振荡培养箱 -使用说明

1使用条件:

A、环境温度:10-30℃;

B、无强烈光照、无强烈腐蚀性气体、通风良好、相对湿度85%以下;

C、使用电源: 200V±10%,50HZ。容量不小于1KW,备有地线的电源插座;

2使用方法:

A、接通电源:将三芯插头插入电源插座,把面板上电源开关置“开”的位置,此时仪表出现数字显示,表示设备进入工作状态。

B、按温度设定方法设定好实验温度(温度控制说明书另附),待温度恒定之后就可以开始工作。

C、智能式和特种要求另付使用说明书。

D、需要摇床工作时,打开摇床电源开关,调节转速旋钮至所需转速就可以。

E、详细设置请参阅仪表说明书。

恒温振荡培养箱 恒温振荡培养箱:恒温振荡培养箱-性能介绍,恒温振荡培养箱-使用说明恒温振荡培养箱

恒温振荡培养箱_恒温振荡培养箱 -主要技术参数

型 号:BS-1E

控温范围:5-50℃

分辨率:±0.1℃

控温波动度:数显型≤±1.5℃ 智能型≤±1℃

温度均匀性:±1℃

电 源:220V±10%、50HZ

功 率:加热器:300W、压缩机:180W 振荡器:60W

恒温振荡培养箱 恒温振荡培养箱:恒温振荡培养箱-性能介绍,恒温振荡培养箱-使用说明恒温振荡培养箱振 幅:20 mm

转 速:起动—220转/分

恒温振荡培养箱_恒温振荡培养箱 -结构特点

1、本设备外箱是冷轧钢板、表面采用静电喷塑工艺、内胆为不锈钢、保温层由聚氨脂发泡形成,透光窗采用双层玻璃以确保箱内的保温性能(低温培养箱和BOD等要求不透光的培养箱无玻璃窗),箱体内部有冷、热气流风道使箱内气体循环流畅、温度更加均匀。

2、设备的控温系统,智能型应用先进的电子电路,实现模拟控制。采用自调整PID系统,加热执行系统采用“过零”无触点开关电路技术,因而实现了脉冲调宽方式加热,使其温度控制波动范围小于等于1℃。

恒温振荡培养箱_恒温振荡培养箱 -注意事项

a)本设备落地后,如地面不平应以垫平。

b)设备的搬动要平行移动,任何一方向倾斜角应小于45度。

c) 本设备在正常运行时,箱内载物摆放应不影响空气流通,以保证箱内温度均匀。

d)箱壁内胆和设备表面要经常擦拭,以保持清洁。

e)设备长期不用,应拨掉电源线,以防止设备带电伤人。并应定期(一般一季度)按使用条件运行2-3天,以驱除电气部件的潮气,避免损坏有关器件。

f) 其产品 如发生故障,应由专业人员维修解决。


恒温振荡器具有的功能及应用领域
恒温振荡摇床主要是用于对温度、震荡频率有较高要求的细菌,发酵,杂交和生物化学反应以及细胞组织研究等。
恒温振荡器主要具有以下几种功能:
1)具有最先进的变频功能(省电,耐用性强,噪音小)
2)液晶显示系统(美观),占地面积小,载瓶量大。
3)转速均匀,不会过冲,使之平稳加速,在瞬间开停不会甩开瓶子,保证实验的安全。
4)可根据北京时间设定所要的时间,具有加热,超温保护功能。
5)转速可调,并且可升级C02、湿度、RS485等功能,实现一机多用。
6)可以选配多种弹夹,常用万能弹簧夹,固定夹具等等。
恒温摇床(恒温振荡培养箱)是植物、生物、微生物、遗传、病毒、环保、医学等科研,教育和生产部门作精密培养制备不可缺少的实验室设备,适用于医学、生物学、分子学、各大中院校、油化工、卫生防疫、环境监测等科研部门作生物、生化、细胞、菌种等各种液态、固态化合物的振荡培养。

本文标题:恒温振荡培养箱-基于Modbus协议的恒温振荡培养箱控制器设计与实现
本文地址: http://www.61k.com/1085231.html

61阅读| 精彩专题| 最新文章| 热门文章| 苏ICP备13036349号-1