用行空板做一个微波炉模型

2022-05-012.4万
精华项目
AI 快速预览详细 收起
本项目是使用行空板制作的一个微波炉模型,旨在演示控制系统的工作原理。项目所需硬件包括行空板、继电器、RGB灯带、电机等。通过Jupyter编程环境,实现了虚拟触摸面板、档位时间设定等功能。这个项目不仅能够帮助学生理解控制系统的基本概念,还能锻炼他们的动手能力和逻辑思维能力。


【创意起源】
       2022年信息科技新课标中提及:学生在生活场景中能见到大量的具有过程与控制系统的设备。以学生能够理解的身边的例子为载体,让相关思维方式具体地显现在其中。例如,家用微波炉给食物加热的过程可以抽象为:输入指令,设定加热挡位与加热时间,控制电路接收输入指令,计算后生成相应的工作指令……因此本作品制作是为了演示控制系统,便于学生理解控制系统模型。
【作品展示】
用行空板做一个微波炉模型图2
用行空板做一个微波炉模型图3
用行空板做一个微波炉模型图1
【使用的库】
本控制系统程序中使用了的库如下所示
序号
名称
作用
1
time
时间模块
2
unihiker
行空板内置库,对于屏幕显示和控制,在unihiker库中基于tkinter库封装了一个GUI类,对于方便麦克风和usb喇叭的使用,在unihiker库中封装了一个Audio类。
3
pinpong
pinpong库由于支持众多的主控板及开源硬件,因此分成了3个包,board、extension和libs,board包中放置主板支持的功能及常用库,extension为定制类主控,libs中放置其他传感器的扩展库。

【功能简介】
微波炉控制系统模型,应该具备以下功能:
(1)虚拟触摸面板:通过触摸面板进行微波炉控制系统的操控。
(2)设定档位时间:通过触摸面板设置微波炉的工作档位和工作时间。
(3)继电器原理演示:继电器是弱电控制强电设备的常见器件,展示其工作过程。
【相关器材】
序号
名称
数量
1
行空板
1
2
继电器(透明盒盖)
1
3
RGB灯带
1
4
电机+电机转换模块
1
5
M3螺丝
1
6
松木板、亚格利板
若干
1器材列表
【编程环境】
(1)连接设备:行空板可以有多种方法连接方式,USB线、路由器、Wi-Fi、热点模式。我们今天在这里推荐使用USB线连接行空板与电脑。这种方式IP地址固定且网络稳定。使用行空板会虚拟为一个RNDIS网卡设备,此时板子IP地址固定为10.1.2.3,输入板子的IP即可开始编程。
(2)编程环境:行空板编程方式也有多种,我们这里使用的是Jupyter编程方式。连接行空板到电脑,开机完成后打开浏览器,输入IP地址10.1.2.3即可打开主页菜单。选择应用开关,在Jupyter应用中查看运行状态,如果是未运行,则先点击启动服务,等待状态变为正在运行后,点击打开页面可以打开Jupyter后台页面。同理,也需要将SIoT服务启动。

用行空板做一个微波炉模型图4
(3)Jupyter打开后,点击New > Python 3(ipykernel)即可创建一个jupyter项目
用行空板做一个微波炉模型图5
(4)输入代码后,点击运行即可查看结果
用行空板做一个微波炉模型图6
【电路连线】
本次作品除了行空板外,还使用了RGB灯带、继电器、电机,其中RGB灯带用来模拟档位控制,分别以不同颜色代表不同的档位(红色—3档,蓝色—2档,绿色—1档),其接线在24口;继电器用来模拟控制磁控管,其接线在21口;电机用来带动转盘转动,其接线在23口上。
【编写程序】
本作品中我们将行空板的屏幕作为控制系统的输入操控界面,因此需要通过编程定义标题文字、边框、填充、按钮、数字文字等各类控件,具体工作如下所示。
用行空板做一个微波炉模型图7
  1. <font size="4">(1)导入相关库
  2. import time
  3. from pinpong.board import Board,Pin,Servo,NeoPixel
  4. from pinpong.extension.unihiker import *
  5. from unihiker import GUI   #导入包</font>
复制代码
  1. <font size="4">(2)UI界面及档位、时间变量设计,其中UI界面中使用了标题文字、边框、填充、按钮、数字文字等各类控件,具体设置如
  2. gui=GUI()  #实例化GUI类
  3. v=0                 #定义为微波炉档位
  4. t=0                 #定义为微波炉时间</font>
复制代码
  1. <font size="4">#标题
  2. info_text = gui.draw_text(x=120, y=50, text='微波炉控制系统',origin='bottom',font_size=20,)
  3. #+-按钮
  4. but1=gui.add_button(x=210, y=90, w=30, h=30, text="+", origin='bottom', onclick=but1_on_click)
  5. but2=gui.add_button(x=210, y=150, w=30, h=30, text="-", origin='bottom', onclick=but2_on_click)
  6. but3=gui.add_button(x=210, y=205, w=30, h=30, text="+", origin='bottom', onclick=but3_on_click)
  7. but4=gui.add_button(x=210, y=262, w=30, h=30, text="-", origin='bottom', onclick=but4_on_click)</font>
复制代码
  1. <font size="4">NEOPIXEL_PIN = Pin.P24
  2. PIXELS_NUM = 7 #灯数
  3. Board("UNIHIKER").begin()  #初始化,选择板型,不输入板型则进行自动识别
  4. np = NeoPixel(Pin(NEOPIXEL_PIN), PIXELS_NUM)
  5. noc = Pin(Pin.P21, Pin.OUT) #继电器引脚初始化为输出
  6. mot =Pin(Pin.P23,Pin.OUT) #电机引脚初始化输出
  7. while True:
  8.     but5=gui.add_button(x=120, y=310, w=100, h=30, text="开始", origin='bottom', onclick=but5_onclick)  
  9. time.sleep(0.5)      </font>
复制代码
【设计结构】
为了实现模拟微波炉箱体,我们在LaserMaker中设计了一个盒体结构。该结构中包含了一个隔板,隔板将微波炉分为两部分,一部分电路控制区,一部分模拟加热区,具体结构设计如下所示。
用行空板做一个微波炉模型图8
用行空板做一个微波炉模型图9
用行空板做一个微波炉模型图10
用行空板做一个微波炉模型图11
用行空板做一个微波炉模型图12
用行空板做一个微波炉模型图13
用行空板做一个微波炉模型图14
【设备安装】
1)用螺丝按孔位将行空板固定在行空板固定板上。
用行空板做一个微波炉模型图16
用行空板做一个微波炉模型图17
用行空板做一个微波炉模型图15
用行空板做一个微波炉模型图18
用行空板做一个微波炉模型图25
用行空板做一个微波炉模型图19
用行空板做一个微波炉模型图21
用行空板做一个微波炉模型图20
用行空板做一个微波炉模型图22
用行空板做一个微波炉模型图23
用行空板做一个微波炉模型图24
用行空板做一个微波炉模型图27
用行空板做一个微波炉模型图26
用行空板做一个微波炉模型图28
用行空板做一个微波炉模型图29
【运行测试】
用行空板做一个微波炉模型图31用行空板做一个微波炉模型图30

创作许可协议

本项目采用 None(不开放任何权利,保留所有权利) 进行许可。

评论(10)
北京溪溪
北京溪溪
有微波炉外壳的切割尺寸吗?
DFrJ5KYVQaH
DFrJ5KYVQaH
真不错,我要好好学习学习一下。
少东
少东
这个效果的逻辑是符合常识的。
派大星ym
派大星ym
简直一模一样
盐焗海盐
盐焗海盐
666666666666666666666
春秋大仙
春秋大仙
合金弹头就是强啊
hnyzcj
hnyzcj
作者
回复春秋大仙
大仙更牛
水晶
水晶
66666666666666
rzegkly
rzegkly
喜欢
hnyzcj
hnyzcj
作者
+模型
hnyzcj
hnyzcj
作者
回复俺是胡胡
问客服
俺是胡胡
俺是胡胡回复hnyzcj
你们谁知道商城代金券怎么合并用啊
诩
这个真的可以用?
诩
回复hnyzcj
哦哦,我看视频
一顿操作猛如虎
hnyzcj
hnyzcj
作者
回复
不可以,
- 没有更多了 -