忘记过去,超越自己
- ❤️ 博客主页 单片机菜鸟哥,一个野生非专业硬件IOT爱好者 ❤️
- ❤️ 本篇创建记录 2022-10-13 ❤️
- ❤️ 本篇更新记录 2022-10-13 ❤️
- 🎉 欢迎关注 🔎点赞 👍收藏 ⭐️留言📝
- 🙏 此博客均由博主单独编写,不存在任何商业团队运营,如发现错误,请留言轰炸哦!及时修正!感谢支持!
- 🔥 Arduino ESP8266教程累计帮助过超过1W+同学入门学习硬件网络编程,入选过选修课程,刊登过无线电杂志 🔥
今天不教知识,纯粹属于博哥个人杂谈所想,如有不同看法可忽略。
最近博哥在进行一对一物联网体系知识付费教学培训,发现了很多初学者容易出现的一些误区:
- 1、很多初学者容易陷入
身在深林,只知一木
的错觉,很容易在没有理解整个体系结构的基础上就深入其中学习某一点知识。- 2、很多初学者以为硬件就是物联网整个全部,容易忽略后端整个业务逻辑或者无从下手。
- 3、一些参加物联网比赛的同学,对于分工方面没有一个合适的分工。
- 4、一些阅读esp源码的时候无从下手
…
针对这些问题,博哥根据自己对于物联网的理解以及知识教学所整理的资料,给出一些自己的想法。
在我们常见的场景中,结合硬件可以区分为好几类:
这个场景下。
Bluetooth 2.0 2.1
(虽然现在慢慢用得少了)。经典蓝牙模块代表:
HC-05
与HC-06
蓝牙串行端口通讯模块
所以这里就引申出几个学习的方向:
参加比赛的条件下,也能按照上面几个方向去组成合适的团队。
这个场景下。
所以这里就引申出几个学习的方向:
针对ESP32 Ble,博哥讲述了一些知识
经典代表
- 目前市场中SKYLAB的BLE蓝牙模块主要是基于
Nordic
方案的蓝牙模块
参加比赛的条件下,也能按照上面几个方向去组成合适的团队。
不管是蓝牙还是网络,有一个概念虽然简单但是非常重要。client/server模型:
客户端发起请求,服务器响应请求。
而在博哥看来,物联网网络模型可以用以下图来概括:
区分为三个端:
它们之间的数据传输通过tcp/ip协议
进行。我们接触比较多的就是应用层协议。
tcp/ip协议算是计算机网络的重中之重。
务必认真学习
。博哥也稍微写过一两篇。
每一个端都各自有自己的技术栈,参加比赛的时候也可以按照这个端去组成队伍。
比较常见的开发方式包括:
博哥所写过的相关资料:
博哥所写过的相关资料:
计划会写
这里的单片机特指本身没有自带网络功能,比如51单片机、msp系列、stm32等等,而网络模块特指支持网络通信的模块,比如esp8266系列、esp32系列、dtu物联网卡、以太网模块等等
而如果要深入学习esp源码,可以在tcp/ip协议基础上去分类学习。
区分为:
http
、mqtt
、dns
、websocket
、ntp
以及自己自定义的协议(像onenet的edp
协议)https
、wss
等等所涉及的ssl、tls等等tcp
、udp
协议LwIP
,嵌入式里面非常有名的轻量化TCP/IP协议,在TCP/IP基础上针对嵌入式设备进行了裁剪定制。应用层、中间层、用户层
代码。
说到后台服务,一般我们打交道最多就是巴法云、阿里云、onenet、百度华为等等第三方已经写好的,基本上照着官方文档来学习即可。不管哪个云,一般部署大多数都是mqtt服务器
或者http服务器
等等。
它们的核心在于:
逻辑处理
+数据存储
逻辑处理一般就是对应的服务器代码(mqtt
、http
逻辑处理),数据存储一般就是mysql、mongdb、redis等等技术。
当你对这些熟悉之后,就可以开始写自己的后台服务器,也叫作自开发服务器。而服务器技术可能包括java、nodejs、python、go等等,但论简单易学以及物联网特性来说,nodejs算是目前博哥比较推荐的,数据库就可以使用mysql。
博哥所写过的相关资料:
当你设备端有了,后台服务器也有了,那么剩下最后一个就是UI界面展示数据。
比较常见的开发方式包括:
推荐学习微信小程序
目前主流技术包括android、ios、flutter、uniapp,对于物联网同学来说,可能uniapp更好,基于vue,这样在学习nodejs这些前端知识的时候可以慢慢统一到web前端技术栈。
对于一些不想花费太多时间的同学,可以使用Node-Red这门图形化技术,相对比较简单。而且学习门槛不高。
博哥所写过的相关资料:
这就是博哥对于物联网体系知识的一些简单梳理,希望能解答一些同学关于学习物联网知识的疑问。并且博哥始终认为,学习物联网,千万不要只看到一张叶子,而放弃了整个森林。