前言

        在面临琳琅满目的电子模块、开发板,我选择以项目为中心,只学习和采购和项目有关的,来抑制我这要买、那想试的欲望。

        之前没有给自己这个设定,在我焊接套接的时代,买一样时会顺带好几样,以致我的电子元件仓库小有规模。正在进行的迷你气象站项目里一些材料都可以在仓库里找到,我只能安慰自己说这算是未雨绸缪。

        现在又出现类似的问题:我的想法越来越多,待做的项目也开始增加。我必须给它们归档,设定优先级,抓住重点,避免本末倒置。

项目一:迷你气象站

        由来
        这是业余无线电中APRS的衍生项目。APRS即Automatic Packet Report System,是通过无线电收发数据(互联网兴起后也可以通过网络收发)。最基本的是定位数据,可以建立气象站发送气象数据,车载设备还可以发送速度方位角等数据。
        我当时也想搞个气象站,但成品太贵,所以我想DIY,在啥都不懂的时候买了一个温湿度气压模块。在“珍藏”多年后,我终于有能力付诸行动了。

        优先级
        0级   

        状态
        进行中

        难度
        ☆

        硬件需求
        pico(开发板)、esp01s(wifi功能)、bh1750(光照传感器)、APRS物联网温度湿度气压模块(集成SHT20温湿度模块、BMP280气压模块)、5V转3.3电平转换模块(专给esp01s供电)等

        软件需求
        pico上使用micromython开发程序,采集气象数据并发送到物联网平台,还能从物联网云平台获取设置数据,实现远程设置。采用MQTT。

        是否联网
        是

项目二:监控系统

        由来
        这是儿子提的需求。他玩游戏《我的世界》时用到监控插件,想在现实中也有一套,可以在手持设备上查看各个摄像头画面。

        优先级
        1级   

        状态
        准备中

        难度
        ★★★(涉及视频数据的传输,尚未学习;还要在树莓派上建立监控中心)

        硬件需求
        摄像头组件(包括picoW,摄像头模块)、树莓派4B

        软件需求
        picoW上要用micropython开发程序,树莓派上也要用pytnon开发程序,手机端使用浏览器查看

        是否联网
        是

项目三:向日葵系统(太阳能充电)

        由来
        此项目用来学习舵机。能自动跟踪太阳,实现太阳能电池板的最大限度获取光能。另外可能增加根据太阳角度估算当前季节和时间的功能。

        优先级
        3级   

        状态
        计划中

        难度
        ★★☆

        硬件需求
        pico,光照传感器,方位传感器,其他待定

        软件需求
        pico上编写程序

        是否联网
        否

项目四:4G通讯定位器

        由来
        虽然儿子是自己骑自行车上学,但某些特殊天气,比如下大雨且没带雨披,需要接送。上次雨天接他放学,虽然和他约定的地点离校门较远,仍被堵住到不了。我无法联系他,不然可以让他走过来,我再调头。要不是我放弃前行、就近停车、步行去叫他,还不知道几点能到家。
        因此我需要一个能和他通讯的设备。但儿子的学校是不允许带手机、电话手表的。我已有的小米定位电话只能定位和打电话,又很小,本可以勉强算不违规,但最近坏了。
        网上找不到廉价的替代品,只能自己diy了。使用LoRa或迷你对讲机都需要一对专用设备,距离和稳定性也不高,所以我决定使用4G网络。

        优先级
        2级   

        状态
        计划中

        难度
        ★★☆(位置信息要在地图显示)

        硬件需求
        pico,gps模块,4G模块,语音模块

        软件需求
        pico上编写程序,通过4G网络发送位置信息,微信端接收并显示在地图上,还要实现打电话功能

        是否联网
        是

后记

        随着后续学习的深入,以后项目肯定会增减、功能也会改动,均在此文体现。

        我所有单片机的开发语言都是micropython,这是因为我本来就在学习python,基本无需多学习,可以一鱼多吃。当然也不可避免要了解其他语言(比如JavaScript,c++),毕竟python是胶水语言,不但要整合其他语言写的模块,还可能要改写一些模块。

        要进步,唯有“学”、“习”并重,不停迭代,才能抟扶摇而上。

Logo

宁波官方开源宣传和活动阵地,欢迎各位和我们共建开源生态体系!

更多推荐