回答

收藏

[原创] TigerBoard微型水泵控制项目开发之九——软件设计和流程

#拆解/开源硬件 #拆解/开源硬件 2587 人阅读 | 0 人回复 | 2016-03-16

本帖最后由 fyaocn 于 2016-3-22 10:17 编辑

续前贴:
4. 项目软件设计
4.1 Tigerboard开发平台和设计
    TigerBoard可以使用Android,Debian,Ubuntun操作系统。提供了原生的Gobian,Godroid操作系统。
    本项目开发基于Gobian操作系统,经测试,Python已经在该系统安装,可以用来实现本项目的程序控制语言。
    在python中,已经直接使用RPi.GPIO模块,需要注意的是这个GPIO的模块定义仅限于J3接线座。Tigerboard比树莓派多了J4接线座,因此按照setmode(GPIO.BOARD)定义为直接引用引脚编号时,只有J3的1-40一一对应,这个可以从对照表上查出来。其他的如果希望访问,需要更底层的语句支持,不过这个项目不用那么多,只用2组就够了。用引脚31设置为输出引脚,接在电机驱动模块的输入级,当输入高电平时打开水泵电机,低电平时关闭。
    下面是主要的语句,
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BOARD)
GPIO.setup(31,GPIO.OUT)
GPIO.setup(33,GPIO.IN)

4.2 软件流程
程序编制流程图如下。

   因为浇水后土壤的吸收有一定的时间,因此采用每次浇水后隔较长时间再检测一次的方法,所以time.sleep()来暂停,以继续检测,本例中为了方便,选择了2秒,time.sleep(2.0)。实际测量时宜选择600秒以上,即隔10分钟检测一次。
    程序编辑截图如下,

执行使,直接执行
python pump.py
就可以开始运行。
这里没有使用湿度传感器,因为响应速度太慢了,直接用短接33引脚和GND引脚提供一个下降沿操作来作为启动信号。
把源码上传如下,注意,a) python语言中是用缩进表示程序段的,一定要保持缩进统一;b)中间一定要注意区分大小写,一定不能用word等能够自动改变大小写的编辑器。
这个源码是在windows下编辑的。如果要下载到tigerboard上,要用usb host,或者在Linux系统下用SCP方式拷贝。
本站还不能上传.py文件,必须要压缩下啊


pump.rar (269 Bytes, 下载次数: 2)





分享到:
回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /3 下一条