首页 理论教育 典型训练任务:单片机C语言编程成功学习

典型训练任务:单片机C语言编程成功学习

时间:2023-10-11 理论教育 版权反馈
【摘要】:当设定温度超过38℃时,限制设定温度为38℃。当设定温度低于1℃,限定设定温度为1℃。任务四:全自动洗衣机此项目为2009年湖北省中等职业学校技能大赛单片机控制装置安装与调试技能竞赛试题。使用“显示模块”中的“8位数码管”显示有关信息。

典型训练任务:单片机C语言编程成功学习

任务一液晶数字钟

利用LCD1602实现第3章的24h数字钟ꎮ

任务二:利用LM35和LCD1602,实现第6章的自动恒温箱

任务三:智能换气扇

智能换气扇可以根据室内温度自动控制风扇电动机的运行ꎮ设有手动和自动两种模式ꎮ

1.控制功能说明

智能换气扇控制部分由输入按键、显示部分、输出部分组成ꎮ

(1)输入按键部分:使用7个按键,分别是电源、手动/自动、+、-、进风/出风、开、关,用于对运行状态和参数的设定ꎮ它们的功能见表7-7ꎮ

7-7 智能换气扇按键的功能说明

978-7-111-46996-4-Part02-118.jpg

(2)显示部分:使用LCD1602显示工作状态ꎮ电源关闭时显示欢迎信息“wel-come!”,按下电源键,正常工作时,第1行显示工作模式“Mod:main/auto”,main为手动,auto为自动。换气扇的运行状态“Fan:in/out”,in为进风,out为出风。第2行显示设定温度和实际温度,正常工作时显示Test+空格+2位温度值,设定时显示Set+空格+2位温度值。

使用LED进行电源指示,电源开时,LED点亮;电源关时,LED熄灭。

(3)输出部分:驱动交流电动机或直流电动机

2.初始状态

通电后,控制器不工作。LCD1602液晶屏第1行显示“welcome!”(欢迎),第2行显示“PressPowerKey”(请按电源键),电源指示LED熄灭,风扇电动机停止转动。

3.工作要求

(1)按下电源键,电源指示LED点亮。控制器工作在自动模式,液晶屏显示预先设定的参数并按参数运行。液晶屏第1行显示“Mod:autoFan:out”,第2行显示“Test:∗∗Set:24”,如果再按下电源键,则回到初始状态,LCD1602显示欢迎信息。

自动模式(auto)的功能是将温度传感器(用18B20或LM35均可)实测的室温与设定的温度相比较,当实测的室温高于设定温度2℃时自动起动换气扇并出风;当实测室温低于设定温度时换气扇电动机停止运行,Fan的状态显示off;当实测温度达50℃以上或为负值时,自动停止风扇电动机,Fan的状态显示off。

(2)参数设置:要改变工作方式或改变设定的温度,需重新设置参数。只有在电源键按下开启电源后,其他按键才生效。

1)工作模式切换:按下“手/自动”键一次,工作模式发生一次变化。液晶屏上的“mod:”后的内容相应地改变。手动模式下,换气扇的运行与温度无关,直接由按键控制,按下“开”或“关”,起动或停止风扇电动机的运行,按下进风或出风改变风扇电动机的运转方向。

2)改变设定的温度。按下“+”一次,可使原先设定的温度值加1或减1,液晶屏上对应的“Set:”后显示当前设定的温度值。当设定温度超过38℃时,限制设定温度为38℃。当设定温度低于1℃,限定设定温度为1℃。

3)设置进风/出风方式。只有在手动模式下,按下“进风/出风”键才生效,按该键一次,可使“进风”改为“出风”,或由“出风”改为“进风”。液晶屏上对应用位“Fan:”后面显示相应的进风/出风方式(in或out)。

4)开关换气风扇电动机:只在手动模式下,按下“开”、“关”键才起作用,屏上对应位置“Fan:”后显示相应的电动机的状态即当电动机停止时显示“off”,运行且进风时显示“in”,运行且出风时显示“out”。

任务四:全自动洗衣机

此项目为2009年湖北省中等职业学校技能大赛单片机控制装置安装与调试技能竞赛试题。涉及数码管显示、温度传感器、A-D变换、交直流电动机、按键等,综合性较强,有一定的难度。可以很好地锻炼编程和解决复杂的综合性问题的能力。

1.评分标准

(1)职业与安全意识评分标准(此项满分为10分,最低为-40分)

978-7-111-46996-4-Part02-119.jpg

(2)工艺性评分标准(此项满分为30分,最低为0分)

978-7-111-46996-4-Part02-120.jpg

(3)功能评分标准(此项满分为60分,最低为0分)

978-7-111-46996-4-Part02-121.jpg

(续)

978-7-111-46996-4-Part02-122.jpg

2.“全自动洗衣机”的工作任务书

(1)总体要求(请在4h内完成)

1)关模块及元件,构建一套虚拟“全自动洗衣机”系统。

2)请在试卷后面答题纸上准确、规范地画出你设计的模块接线图。请注意按要求填写工位号。

3)请按照工艺规范用导线连接“全自动洗衣机”所需各模块及元件。(www.xing528.com)

4)请按照“全自动洗衣机”的控制要求,编写并调试单片机程序。在交卷前,请保存单片机程序开发目录所有内容到计算机“E:\单片机+工位号”目录下,“工位号”为选手的实际工位号码。交卷前,请务必将程序下载到赛场提供的单片机中。

(2)全自动洗衣机说明

1)系统描述。全自动洗衣机是虚拟生活中的“微电脑洗衣机”,模拟完成衣物的自动清洗、烘干等功能。

整个系统由操作面板、洗涤部件、烘干部件等组成。

2)模块及元器件说明

①操作面板。使用“WYDX-1单片机技能实训平台”中“键盘模块”的“0-SB1”、“0-SB2”、“0-SB3”、“0-SB4”,分别构成“开始/暂停”键、“↑”键、“→”键、“开电源/关电源”键,注意“0-SB1”和“0-SB4”均有两种功能。

使用“显示模块”中的“8位数码管”显示有关信息。显示格式为“XXX.XX.XXX”,左边3位显示洗衣桶内水位高低信息,中间2位显示烘干温度信息(显示精确到1℃),右边3位显示工作时秒倒计时信息。

使用“显示模块”中的“发光二极管”显示有关信息。“LED0”、“LED1”、“LED2”、“LED3”、“LED4”、“LED5”、“LED6”、“LED7”分别表示:“电源指示灯”、“运行指示灯”、“暂停指示灯”、“进水指示灯”、“洗涤指示灯”、“排水指示灯”、“脱水指示灯”、“烘干指示灯”。

使用“主机模块”中的蜂鸣器,实现系统出错时声响报警。

②洗衣桶内水位。使用“可调电压输出”模拟洗衣桶内水位变化,当其输出端子“Vx-OUT”的电压小于0.1V,表示无水;当“Vx-OUT”的电压为1±0.1V,表示到低水位;当“Vx-OUT”的电压为2±0.1V,表示到高水位。

调试程序时,请手动调整电位器RW2,模拟产生水位变化。

③洗涤部件。使用“电动机模块”模拟洗涤部件。当电机上的小转盘顺时针转动时,表示洗涤电动机“正转”;当电动机上的小转盘逆时针转动时,表示洗涤电动机“反转”。通过ST153可以测出电动机转速(单位:r/s),当电动机转速≤35r/s时,为低速运行;当电动机转速≥45r/s时,为高速运行。系统工作时,电动机能够低速正转、低速反转、高速正转。

④烘干部件。使用“温度模块”模拟烘干部件。珐琅电阻用于加热升温,测温传感器指定为LM35。烘干温度默认值为40℃,可以通过键盘修改、设定、保存,烘干温度设定范围为30~49℃。烘干过程中要求控温准确度为:“设定烘干温度”±2℃。

为实现“全自动洗衣机”控制要求,除了以上指定模块外,参赛选手可以再选择使用“WYDX-1单片机技能实训平台”中其他模块、元器件。

(3)全自动洗衣机控制要求

1)初始工作状态

①系统上电后,还没有按下“0-SB4”前,为电源关闭状态,无一切动作、无显示、无声响,不响应除“0-SB4”以外的按键。

②在电源关闭状态下,按下“0-SB4”,表示“开电源”:“电源指示灯”亮;8位数码管依次显示“00000000”、“11111111”、“22222222”、“33333333”、“44444444”、“55555555”、“66666666”、“77777777”、“88888888”、“99999999”各1s。

接着显示“XXX.XX.---”。其中左边3位显示设定的工作水位:高水位显示为“HHH.”,低水位显示为“LLL.”;如果是第一次使用,就显示为“LLL.”,即默认为低水位工作。水位为第一个等待设定的参数,因此左边3位闪烁提示(亮0.3s,灭0.3s)。中间2位显示设定的烘干温度值;如果是第一次使用,就显示为“40.”。右边3位显示为“---”。

然后蜂鸣器响0.5s,提示可以操作。系统处于等待操作状态,响应所有按键。

在“开电源”后的任何时间,再次按下“0-SB4”,表示“关电源”,停止一切动作、显示等,又回到“初始工作状态(1)”;在电源关闭状态下,按下“0-SB4”,又表示“开电源”,如此循环切换。

2)工作过程

①设定参数。在等待操作状态,可以设定有关参数。按下“→”键可以改变设定的对象,按照“3位水位显示→烘干温度十位→烘干温度个位→3位水位显示”次序循环切换,当切换到某参数时,相应位闪烁提示(亮0.3s,灭0.3s)。

按下“↑”键可以改变设定对象的内容:“3位水位显示”按照“HHH.→LLL.→HHH.”次序循环切换;“烘干温度十位”按照“3→4→3”次序循环切换;“烘干温度个”按照“0→1→2→3→4→5→6→7→8→9→0”次序循环切换。

②开始工作。完成参数设定后,或不设定(直接用保存值、默认值),按下“开始/暂停”键,开始自动洗衣工作,系统不响应“↑”键、“→”键,“运行指示灯”亮,8位数码管显示当前实时水位信息(无水为“000.”、低水位为“LLL.”、高水位为“HHH.”)、烘干部件的当前温度信息、当前工作秒倒计时值,由于设定参数工作已完成,因此不闪烁提示。

在结束整个洗衣工作周期前,除故障状态外的任何时候,再次按下“开始/暂停”键,“暂停指示灯”亮,“运行指示灯”灭,暂停当前工作,并停止相关倒计时;在暂停状态下,按下“开始/暂停”键,系统继续工作,恢复相关倒计时,“暂停指示灯”灭,“运行指示灯”亮;暂停状态和运行状态可以不断切换,直至整个洗衣工作周期结束。

③第一次进水。开始自动洗衣工作时,“进水指示灯”亮,表示已打开进水电磁阀,洗衣桶开始进水,同时开始15s倒计时。此时手动调整电位器RW2,模拟产生水位变化(请在开始工作前,先将端子“Vx-OUT”的电压调到小于0.1V;交卷前也请同样处理),等到其输出端子“Vx-OUT”的电压上升到设定的水位时,“进水指示灯”灭,表示已关闭进水电磁阀,此时请注意正确显示当前水位信息。

进水到设定水位的时间应小于15s,否则,判定为故障,“进水指示灯”灭,“运行指示灯”灭,8位数码管显示为“E┌┌0┌---”,蜂鸣器不断报警(响0.3s,停0.3s),此时只响应“0-SB4”按键。

④第一次洗涤。进水到设定水位后,“进水指示灯”灭,“洗涤指示灯”亮,洗涤电动机开始低速正转15s,停2s,低速反转15s,停2s;再次低速正转15s,停2s,低速反转15s;然后停止转动,“洗涤指示灯”灭,完成第一次洗涤。在电动机开始转动时,同时15s倒计时。

在控制电动机转动的所有15s内,若发现连续5s电动机转速低于5r/s,可判定为电动机堵转故障,“运行指示灯”灭,“洗涤指示灯”灭,停止电动机转动,8位数码管显示为“E┌┌0┌---”,蜂鸣器不断报警(响0.3s,停0.3s),此时只响应“0-SB4”按键。

⑤第一次排水。完成第一次洗涤后,“洗涤指示灯”灭,“排水指示灯”亮,表示已打开排水电磁阀,洗衣桶开始排水,同时开始15s倒计时。此时手动调整电位器RW2,模拟产生水位变化,等到其输出端子“Vx-OUT”的电压下降到低于0.1V时,“排水指示灯”灭,表示排水完成,但排水电磁阀不关闭,此时请注意正确显示当前水位信息。

排水完成的时间应小于15s;否则,判定为故障,“排水指示灯”灭,“运行指示灯”灭,8位数码管显示为“E┌┌0┌---”,蜂鸣器不断报警(响0.3s,停0.3s),此时只响应“0-SB4”按键。

⑥第一次脱水。排水完成后,“排水指示灯”灭,“脱水指示灯”亮,电动机开始低速正转15s(同时15s倒计时),再高速正转15s(同时15s倒计时),然后停止转动,“脱水指示灯”灭,表示排水电磁阀关闭,完成脱水。

在控制电动机转动的所有15s内,若发现连续5s电动机转速低于5r/s,可判定为电动机堵转故障,“运行指示灯”灭,“脱水指示灯”灭,停止电动机转动,8位数码管显示为“E┌┌0┌---”,蜂鸣器不断报警(响0.3s,停0.3s),此时只响应“0-SB4”按键。

⑦第二次进水、洗涤、排水、脱水。顺序请参考工作过程的③、④、⑤、⑥步。

⑧烘干。在完成第二次脱水后,“脱水指示灯”灭,“烘干指示灯”亮,烘干部件开始加温;当温度上升到设定值时(注意正确显示实时温度),开始15s倒计时,此时系统要控制其温度在“设定烘干温度”±2℃;当15s倒计时完成后,“烘干指示灯”灭,蜂鸣器响1s,停1s,重复3次,然后“运行指示灯”灭,完成整个洗衣工作周期。

然后系统又回到工作过程的①步,处于等待操作状态。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈