快乐起航2012 发表于 2020-5-14 14:44:01

做个私人专属的快递箱,还是ESP8266吧

本帖最后由 快乐起航2012 于 2020-6-14 16:10 编辑

这两天蜂巢收费的新闻吵得沸沸扬扬,几毛钱的事儿居然这么大动静,看了看才知道,不是钱多少的问题,是原来承诺的不收费,现在做大了开始收费了,目的是为了提高使用率,更有甚者紧接着几家大的快递公司同时宣布涨价,理由是公路收费了。垄断就是任性,连理由都不懒得认真找了。在我看来,其实问题不是收不收费的事儿,是根本问题并没有解决。

快件到了公用的快递柜其实并没有送达用户,很多快递员放快递,很多人取快递,大家都集中在快递柜,堵车是必然的,资源稀缺是必然的。要是快件到了用户专用的快递柜,那就基本上能算到了用户手上了,用户可以随时取,不取也没事儿。

不多废话了,还是说我们的技术吧,很久以前的《用NodeMCU(ESP8266)打造超级实用的智能插排》链接:https://www.geek-workshop.com/forum.php?mod=viewthread&tid=24907&highlight=%E6%8F%92%E6%8E%92 得到很多人的关注,讨论的QQ群有几百人,会员没续费,无法再添加了,这次还用ESP8266,打造一个更实用的快递柜,欢迎一起!


快递柜方案原理如下图所示,系统使用12V直流电源给控制板供电,控制板通过室内的wifi连接互联网,控制指令通过网络发送到控制板,控制板通过控制快递柜上的两个门的电磁锁控制柜门打开。快递柜置于楼道贴墙固定,注意要放在自己家这一边,说不定对门也要装呢;P



定制柜子,还有采购件已经下单了,合计500,为了少花5毛钱,呵呵:D:D:D

电子锁安装后效果还不错。

https://www.geek-workshop.com/forum.php?mod=image&aid=50228&size=300x300&key=43b8c62d0f26e339&nocache=yes&type=fixnone





柜子的按钮开关,还是挺靓的,价格也美丽

https://www.geek-workshop.com/forum.php?mod=image&aid=50229&size=300x300&key=2f0cdbb1417736b9&nocache=yes&type=fixnone

硬件设备安装到位,下面是软件了

快乐起航2012 发表于 2020-5-24 09:33:27

箱体终于到了,迫不及待的安装,叮叮当当的,忽然听到有人敲暖气的声音,看看表都夜里11点多了,看来只能明天再说了:lol

快乐起航2012 发表于 2020-6-14 16:15:33

本帖最后由 快乐起航2012 于 2020-6-14 16:19 编辑

选什么物联网系统啊? 搜索了一下目前的系统,发现阿里有一个Alios things,高大上的准备试试。安装下载系统花了相当长的时间,反复试验就是无法成功编译,进行了各种尝试,版本等等,还是无法成功,最终还是放弃了,让别人先把坑填填再说吧。

系统还是应该选更加大众化的,不要老在冷门的地方浪费时间,于是想到ESP8266也可以上Arduion,来到首页居然有个物联网教程, 点进去推荐了一个blinker的解决方案,试了一下,没有多久居然成功了,看来就它了吧。

快乐起航2012 发表于 2020-6-14 16:24:41

手机app界面配置如下:
在手机上简单操作居然出来个还不错的界面,这是我有史以来最简单的手机端最简单的开发方案,简直是又快又好。

快乐起航2012 发表于 2020-6-14 18:13:53

#define BLINKER_WIFI
//定义端口地址 根据连线情况确定
#define DOOR1 2
#define DOOR2 3
#define KEY1 4
#define KEY2 5
//头文件
#include <Blinker.h>

//定义链接参数,这个是秘密只能xxxx了
char auth[] = "xxxxxxxxxxxxxx"; //blinker上的设备码
char ssid[] = "TPxxxxxxxx";   //路由器
char pswd[] = "xxxxxx";       //密码
unsigned char key1_sta=0;
unsigned char key2_sta=0;
unsigned char box1_sta=0;
unsigned char box2_sta=0;

// 新建组件对象连接Blinker用
BlinkerButton Button1("btn-1");
BlinkerButton Button2("btn-2");

// Blinker的回调函数
void button1_callback(const String & state) {
box1_sta=0; //取件,清除有件状态
digitalWrite(DOOR1, LOW);
delay(500);
digitalWrite(DOOR1, HIGH);
}
void button2_callback(const String & state) {
box2_sta=0; //取件,清除有件状态
digitalWrite(DOOR2, LOW);
delay(500);
digitalWrite(DOOR2, HIGH);
}

void setup() {
//设置开门地址
pinMode(DOOR1, OUTPUT);
pinMode(DOOR2, OUTPUT);
digitalWrite(DOOR1, HIGH);
digitalWrite(DOOR2, HIGH);
//设置按键地址
pinMode(KEY1, INPUT);
pinMode(KEY2, INPUT);
Blinker.begin(auth, ssid, pswd);
Button1.attach(button1_callback);
Button2.attach(button2_callback);
}

void loop() {
Blinker.run();
//有按键打开相应的柜子
if(digitalRead(KEY1)==0 && key1_sta==1 && box1_sta==0){
    digitalWrite(DOOR1, LOW);
    delay(500);
    digitalWrite(DOOR1, HIGH);
}
if(digitalRead(KEY2)==0 && key2_sta==1 && box2_sta==0){
    digitalWrite(DOOR2, LOW);
    delay(500);
    digitalWrite(DOOR2, HIGH);
}
key1_sta=digitalRead(KEY1);
key2_sta=digitalRead(KEY2);
}

快乐起航2012 发表于 2020-6-14 18:17:14

附:Blinker的教程地址
https://www.arduino.cn/thread-83754-1-1.html
https://www.arduino.cn/thread-83754-1-1.html

Blinker没有让人失望,实现起来简单快捷,目前使用的免费版本,进一步的专业版待续

系统在工作一段时间偶有不在线情况,具体问题还在排查

wonderfullook 发表于 2020-7-3 19:06:39

箱子里面接收模块电源怎么处理的
页: [1]
查看完整版本: 做个私人专属的快递箱,还是ESP8266吧