一、无人台球厅优点
1. 降低人力成本:无需雇佣大量员工,如收银员、服务员等,节省了工资、福利和管理成本。
2. 24 小时营业:不受人工营业时间限制,可以随时满足顾客的需求,增加营业时长和收入。
3. 便捷高效:顾客可以自助扫码或通过线上预定、支付,减少等待时间,提升消费体验。
4. 节省空间:没有员工休息区、办公室等设施需求,可将更多空间用于台球桌的布置。
5. 管理简单:通过智能化系统进行管理,数据清晰,便于统计和分析营业情况。
6. 减少人际冲突:避免了因服务人员与顾客之间的沟通不畅或服务不到位引发的冲突。
7. 低运营成本:水电费、物料消耗等方面可以更精确地控制和管理,降低浪费。
8. 创新体验:为消费者带来新颖、科技感的消费模式,吸引更多追求新鲜事物的顾客。
9. 隐私性好:对于一些喜欢独自或与少数好友安静打球的顾客,提供了更私密的环境。
10. 选址灵活:对人流量和周边配套的依赖相对较小,选址范围更广。
二、智能开关
智能开关在无人自助的台球厅用于客人缴费后自动开启桌球开关。
三、设备和环境需求
序号 | 项目 | 要求 |
1 | 硬件 | esp32物联网模块,继电器 |
2 | 编程软件 | arduino |
3 | 服务 | 阿里云存放物联网服务端代码,和微信小程序交互控制终端 |
4 | 技术 | C语言、MQ消息队列 |
四、源码
Welcome to the cyberwinThingsPower wiki!
#include <ESP8266WiFi.h>
#include <PubSubClient.h>
int deng = 0; //IO14(D5)
const char* ssid = "wifi名称";
const char* password = "密码";
const char* mqtt_server = "未来之窗"; // 使用HIVEMQ 的信息中转服务
const char* TOPIC = "3434343"; // 订阅信息主题
const char* client_id = "物联网控制id"; // 标识当前设备的客户端编号
WiFiClient espClient; // 定义wifiClient实例
PubSubClient client(espClient); // 定义PubSubClient的实例
long lastMsg = 0; // 记录上一次发送信息的时长
void setup() {
pinMode(deng, OUTPUT); // 定义板载LED灯为输出方式
Serial.begin(115200);
setup_wifi(); //执行Wifi初始化,下文有具体描述
client.setServer(mqtt_server, 9883); //设定MQTT服务器与使用的端口,1883是默认的MQTT端口
client.setCallback(callback); //设定回调方式,当ESP8266收到订阅消息时会调用此方法
}
void setup_wifi() {
delay(10);
// 板子通电后要启动,稍微等待一下让板子点亮
Serial.println();
Serial.print("Connecting to ");
Serial.println(ssid);
WiFi.begin(ssid, password);
WiFi.mode(WIFI_STA);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print(".");
}
Serial.println("");
Serial.println("WiFi connected");
Serial.println("IP address: ");
Serial.println(WiFi.localIP());
}
void callback(char* topic, byte* payload, unsigned int length) {
Serial.print("Message arrived [");
Serial.print(topic); // 打印主题信息
Serial.print("] ");
for (int i = 0; i < length; i++) {
Serial.print((char)payload[i]); // 打印主题内容
}
Serial.println();
if ((char)payload[0] == '0') {
digitalWrite(deng, 0); // 亮灯
Serial.println("已开灯");
} else {
digitalWrite(deng, 1); // 熄灯
Serial.println("已关灯");
}
}
void reconnect() {
while (!client.connected()) {
Serial.print("Attempting MQTT connection...");
// Attempt to connect
if (client.connect(client_id)) {
Serial.println("connected");
// 连接成功时订阅主题
client.subscribe(TOPIC);
} else {
Serial.print("failed, rc=");
Serial.print(client.state());
Serial.println(" try again in 5 seconds");
// Wait 5 seconds before retrying
delay(5000);
}
}
}
void loop() {
if (!client.connected()) {
reconnect();
}
client.loop();
long now = millis();
if (now - lastMsg > 2000) {
lastMsg = now;
client.publish("home/status/", "{device:client_id,'status':'on'}");
}
}
五、服务器选购
六、阿雪技术观
拥抱开源与共享,见证科技进步奇迹,畅享人类幸福时光!
让我们积极投身于技术共享的浪潮中,不仅仅是作为受益者,更要成为贡献者。无论是分享自己的代码、撰写技术博客,还是参与开源项目的维护和改进,每一个小小的举动都可能成为推动技术进步的巨大力量
扫码,可学习更多。