用一个简单的M5堆叠固定所有的水培溶液
扫描二维码
随时随地手机看文章
植物的发育受到不可预测的天气和气候变化的影响,这为新加坡的城市农业提供了问题。为了解决这个问题,我们建议一个项目,在需要的时候,使用伺服电机将一定半径内的工厂移动到更好的环境。虽然水培为植物的发育提供了一个可控的环境,但不同的部分可能会经历不同的光照、湿度和温度水平。如果植物可以自己迁移到理想的环境中,而不需要复杂的气候控制系统,那会怎么样?
该项目使用一个电动平台,使用M5GO(一种强大的小型物联网开发工具包)自动化水培植物的运动。环境因素包括温度、湿度、光照强度等都由系统持续监测。如果现有的环境不合适,植物就会被转移到一个更好的环境中,以保证它们总是有最好的生长环境。
该技术可以根据环境的变化进行动态调整,最大限度地提高工厂的发展,最大限度地减少资源浪费,提高生产效率。无论是对波动的阳光进行调整还是对温度变化进行补偿,这种方法都旨在简化水培农业,同时保持植物健康并最大限度地减少人为干预。
代码
from m5stack import *
from m5ui import *
from uiflow import *
import espnow
import wifiCfg
import time
import unit
setScreenColor(0x222222)
servo0 = unit.get(unit.SERVO, unit.PORTB)
mac = None
Data_send = None
wifiCfg.wlan_ap.active(True)
wifiCfg.wlan_sta.active(True)
espnow.init()
label0 = M5TextBox(155, 49, "Text", lcd.FONT_Default, 0xFFFFFF, rotate=0)
label1 = M5TextBox(170, 125, "Text", lcd.FONT_DejaVu18, 0xFFFFFF, rotate=0)
title0 = M5Title(title="DataReceive", x=3, fgcolor=0xFFFFFF, bgcolor=0xff0047)
label2 = M5TextBox(5, 49, "Mac Address:", lcd.FONT_Default, 0xFFFFFF, rotate=0)
label3 = M5TextBox(5, 125, "Data Received:", lcd.FONT_DejaVu18, 0xFFFFFF, rotate=0)
def recv_cb(_):
global mac,Data_send
mac, _, Data_send = espnow.recv_data(encoder='str')
label1.setText(str(Data_send))
if Data_send == 'Turn on Motor':
servo0.write_angle(180)
wait(1)
elif Data_send == 'Stop Motor':
servo0.write_angle(0)
wait(1)
pass
espnow.recv_cb(recv_cb)
label0.setText(str(espnow.get_mac_addr()))
本文编译自hackster.io