31 Star 151 Fork 82

红枫软件 / MIVMS

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
README.md 6.96 KB
一键复制 编辑 原始数据 按行查看 历史
Ou 提交于 2020-08-04 16:13 . 完善手机端会员管理功能

MIVMS

介绍

鼹鼠智能售货机系统(Mole intelligent vending machine system)是一套物联网控制系统性的解决方案。
主要涉及到的语言和库有c,c++,js,nodejs,vue.js,thinkphp,rt-thread。 整套系统主要作用是打通网站后台,网站前端,手机前端,单片机和微型电脑之间的通信和系统的构建。

设计理念

首先,我们是一个小团队,没有阿里那么多人。因此我们每个人都将是多面手,我们需要处理从服务器到单片机等等各种东西。因此我们在选择我们需要的
工具的时候,学习简单,开发效率高等等是我们要首先考虑到的因素,而性能并不需要太强,足够就可以。
因此我们没有选择java这种大部头的东西,而为什么有c和c++,是因为基本上现在你能见到的东西底层基本都是c或者c++开发的,但我们希望未来能让所有东西
都脚步化。
因此在深入这套系统之前你需要有c,php,js这三方面的东西,我们大部分的东西都是基于nodejs开发而成的,而选择nodejs就是因为nodejs足够简单。
我们这套系统是一个非常全面的东西,涉及到物联网的方方面面,但又足够简单。系统提供了你要操作物联网的基本上所有的例子,有些东西你只需要明白它怎么
工作的就可以直接拷贝代码到你的项目中,让它跑起来。
另外,这套系统不是为大公司和大团队准备的,在这套系统中,性能不是我们要考虑的关键因素,快速和稳定是我们要的东西。
如果你只有2,3个人,或者是一个创业公司,那么这套系统很适合你。
最后,不要忘记提供你的智慧和意见,帮我们完善这套系统。

有物联网的未来将是很美好的!^_^

现阶段已经实现下面功能:

  1. 网站后台部分,采用YZNCMS作为后台管理部分,已经实现各种支付场景,语音识别和合成功能,和MQTT服务器的通信功能;
  2. 网站前端和手机前端部分,采用vue.js作为前端开发,已经实现和网站后台的跨域通信,和MQTT服务器的通信功能;
  3. 单片机部分,已经实现ESP8266,ESP32,f1c100s,stm32配网功能,ESP8266,ESP32,f1c100s,stm32和MQTT服务器的通信功能;
  4. 微信电脑部分,主要基于树莓派加linux系统,编程语言主要是node.js,已经实现和网站后台服务器基于http协议的通信功能,基于MQTT协议的和服务器通信功能,与单片机通信的串口功能;

官方网站:
http://akinggw.gitee.io/moleserver/

系列教程

文件目录

  1. cms - 后台管理系统,主要基于开源项目YZNCMS开发,由于YZNCMS开发的快捷性,试我们在后台管理系统上事半功倍,YZNCMS开源地址:https://gitee.com/ken678/YZNCMS
  2. database - 主要存储系统要用到的数据库,数据库使用开源软件mysql,这个就不多介绍了
  3. doc - 安装和其它需要介绍的文档,整个系统东西比较多,因此有些安装过程需要文档记录一下
  4. esp8266-arduino - esp32和esp8266的一些测试程序,主要基于arduino开发,当然现在esp主流开发已经基于freertos,但arduino在测试原型开发上依然非常的方便和快捷
  5. f1c100s-rtt - 全志f1c100s系列芯片简直是性价比之王的存在,如果你的需求有带屏幕或者带触摸的应用,但又需要廉价的芯片,全志将是你可以考虑的选择。这里是f1c100s芯片系列rt-thread系统的实现,gpio,pwm,uart,otg等等基本功能都已经实现。
  6. f1c100s-xboot - 全志f1c100s系列芯片的xboot系统实现,总的来说这个系统编译比较大,但驱动很多,代码很全,对于学习单片机驱动开发和系统整个架构还是有好处的
  7. mobile - 手机管理系统实现,主要基于vue.js开发,实现了跨域操作数据,mqtt的通信等东西
  8. mosquitto - mqtt开源服务器,对于不算大型或者巨型的项目,mosquitto足够好
  9. raspberrypi-nodejs - nodejs版的树莓派实现,主要实现了nodejs在树莓派上操作gpio,mqtt,摄像头,自动系统更新等等东西,如果你想做一些有视频,有动画,足够炫的东西,那你需要这个,当然还有其它派可以选择,比如荔枝派,香蕉派,香橙派等等。
  10. screen - 一些项目截图
  11. server - 基于nodejs实现各种服务器操作,mqtt服务器,websockets服务器,tcp服务器,mysql,redis等等,nodejs让服务器开发如此快捷简单
  12. stm32f103-rtt - stm32f103最低版本的rt-thread实现,已经实现了gpio,pwm,watchdog,uart等等功能,如果你只是搞单片机,这个价格足够低,功能足够够用。
  13. tools - 一些单片机烧录工具和其它一些需要到的工具

整套系统主要分为4个部分:

  1. MQTT服务器 - 主要采用开源项目Eclipse Mosquitto™作为整个系统的通信系统;
  2. 后台管理 - 主要基于开源系统YZNCMS开发;
  3. 手机监控和管理端 - 主要基于开源前端框架vue.js开发;
  4. websocket和其它服务相关 - 主要基于开源软件node.js开发;
  5. 单片机部分主要基于ESP8266,ESP32,f1c100s,stm32
  6. 微型电脑部分主要基于树莓派,编程语言为node.js

软件架构

Mosquitto在整个系统中处于最中心的作用,它将连接我们在线的所有设备,包括售货机,手机,后台管理,服务器等等。
售货机通过Mosquitto发送系统到手机或者后台服务器用于储存数据库或者在手机上监控。

未来计划

  1. 接入百度AI系统,实现和小度音响的交互;
  2. 接入rt-thread物联网操作系统
  3. 基于神经网络的机器学习部分

截图预览

单片机运行截图1 单片机运行截图2 单片机运行截图3 单片机运行截图4 单片机运行截图5 机器实时在线监控 机器购买界面 扫码付款界面 实时监控机器温度和订单情况 后台管理系统

JavaScript
1
https://gitee.com/akinggw/MIVMS.git
git@gitee.com:akinggw/MIVMS.git
akinggw
MIVMS
MIVMS
master

搜索帮助