TA的每日心情 | 无聊 2014-1-15 11:05 |
---|
签到天数: 2 天 连续签到: 1 天 [LV.1]初来乍到
|
本帖最后由 ky123 于 2018-1-31 13:59 编辑
感谢E络盟提供的助赛基金。
名称
易用的树莓派控制模块
功能
利用树莓派和驱动电路模块,组成一个易于使用的自动控制系统。编程方案则在学习和试验中确定,力图精简化图形化,常用的控制方法模块化调用,实现数分钟搭建完成简单应用。
简单应用例如:自动浇花器,密码锁,灯光控制器等等
系统版本
2017-11-29-raspbian-stretch.img
由于第一次使用树莓派,概念和方法都不了解,故而学习花费了很长时间。
选定用python开发又花费了很长时间学习,尽管如此,python仍是比较简单容易入门的。
因为时间所限,没有做板,本来应该做一个配套硬件板来配合运行。现只是做了简单的程序界面,还有待完善。
所以目前的硬件就是树莓派和传感器板
未来继续开发的话,需要做专用的附加板,符合HAT标准,内置需要的传感器和驱动电机,声音等电路。
树莓派界面使用python3,GUI使用简洁的内置tkinter,但是学习起来就比较费力了。
部分界面代码~
root.title('树莓派多用控制器')
slb=Listbox(root,exportselection=False) #source
clb=Entry(root) #control
dlb=Listbox(root,exportselection=False) #doing
rtx=Text(root) #rules
abt=Button(root,command=addonb,width=10,text='添加', relief=FLAT) #add on
sbt=Button(root,command=startb,width=10,text='开始', relief=FLAT) #start
stopbt=Button(root,command=stopb,width=10,text='停止', relief=FLAT) #stop
for item in source:
slb.insert(0,item)
for item in doing:
dlb.insert(0,item)
slb.grid(row=0,column=0,sticky=NW)
clb.grid(row=0,column=1)
dlb.grid(row=0,column=2,sticky=NE)
rtx.grid(row=1,column=0,columnspan=3,sticky=N)
abt.grid(row=2,column=0,sticky=SW)
sbt.grid(row=2,column=1,sticky=S)
stopbt.grid(row=2,column=2,sticky=SE)
python学习和开发虽然比较陌生但是也是非常有趣的,常常令人忍不住实验和尝试各种程序,时间消耗了不少~~
最终选择的UI形式,目标是易用,不懂编程的人也能使用。
左上是输入信号,中间是控制条件,大于等于小于……,右上是输出控制,打开关闭PWM。
设置完一条规则点左下的添加按钮,规则添加到中间的信息区域。开始和停止按钮控制规则是否生效。添加多个规则则可实现完整的自动开关控制。也能用一个派控制多路不相关的设计。
虽然目前还远未完善,但是也能说明基本设计了。虽然这样用树莓派像是用微控制器就能实现,有点大材小用。
但是树莓派完善的系统和开发环境以及强大易用的python语言都对项目设计提供了灵活方便的支持,又能较容易的做各种尝试。未来还有可能集成音频视频的功能,以及拍照摄像等等,这些都是因为树莓派是一个比较高性能的电脑。
视频介绍简单,上传百度,点击可看~非常感谢易络盟这次提供的机会^_^
视频 https://pan.baidu.com/s/1dGYpgQl
|
|