【毕业设计_课程设计】开源物联网系统设计(源码+论文)
文章目录
- 0 项目说明
- 1 摘要
- 2 设计内容
- 2.1 3.1.硬件设计
- 2.2 软件设计
- 4 项目源码
0 项目说明
开源物联网系统设计
提示:适合用于课程设计或毕业设计,工作量达标,源码开放
1 摘要
介绍了以REST服务为核心、单片机、ARM开发板而辅助的物联网系统的结构组成及工作原理,提供了相应的软件代码及硬件结构。首先研究了不同服务框架的区别,包括不同语言间开发的优势及劣势,之后重点以REST服务为核心构建系统。本设计中,单片机与ARM开发板通过串口通信的方式实现通信,相互传输所需要的数据,ARM开发板将资源传于互联网上对应的接口,接口可以在互联网上被访问。将ARM开发板获取过来的数据存储于MySQL数据,再以REST服务的方式共享数据,互联网上的其他设备便可以通过网络来访问这些设备。系统分离了软件、硬件的耦合,不仅可以方便系统开发,也可以方便由不同的硬件替换相应的组成,使之更容易理解,同时可以实现更多设备的连接,以实现真正的物联。
2 设计内容
物联网的核心也就是网络服务,而网络服务在某种意义上来说,就是需要打造一 个多平台的通信协议,在使机器、家电、设备等连上计算机网络。基本的物联 网系统,不仅能控制设备,还可以在远程查看状态。而复杂的物联网系统可以让 互联网上的设备之间实现互联与通信,也就是物联网的最终目标所在——使物体与 物体之间的交互成为可能,不需要人为去干预。
系统采用的结构是: Arduino+Raspberry Pi+Laravel+JSON+RESTful+Ajax+Python+HighCharts
Arduino与Raspberry Pi通过串口通信的方式实现通信,相互传输所需要的数据, Raspberry Pi将资源传于互联网上对应的接口,接口可以在互联网上被访问。 Laravel框架构架于服务器之上,将Raspbery Pi获取过来的数据存储于MySQL数 据,再以REST服务的方式共享数据,互联网上的其他设备便可以通过网络来访问 这些设备。Ajax用于将后台的数据以不需要刷新的方式传递到网站前台,通过 HighCharts框架显示给终端用户。
Arduino UNO用的处微控制器是Atmega328,它与Arduino芯片的对应关系如下所示
2.1 3.1.硬件设计
Raspberry Pi
Raspberry Pi开发板在这里主要工作有:
与Arduino开发板,通过USB线连接。
可以直接运行Debian GNU/Linux系统,通过网线上网,并从服务器中读取数据,
通过Python语言接收、发送串口数据。
2.2 软件设计
在本地我们需要解决的问题可以如下描述,Arduino开发板从串口一直读取数据, Raspberry Pi从URL中验证数据、解析数据,再将数据发送到串口,我们可以用下面的伪代码来描述:
arduino:beginrepeatwait(serial.open)data:=receive_data()led_status:=parse(data)if led_statusoped(led.id)util falseend
raspberrypi:beginrepeatjson:=get_data(url)if validate(json).success()data:=parse(json)serial.write(data)util falseend
4 项目源码
【毕业设计_课程设计】开源物联网系统设计(源码+论文)相关推荐
- 计算机毕业设计ssm 课程教学过程f6oz5系统+程序+源码+lw+远程部署
计算机毕业设计ssm 课程教学过程f6oz5系统+程序+源码+lw+远程部署 计算机毕业设计ssm 课程教学过程f6oz5系统+程序+源码+lw+远程部署 本源码技术栈: 项目架构:B/S架构 开发语 ...
- 1-基于单片机的城市轨道交通列车超速防护系统_里程表设计(原理图+PCB+源码+仿真工程+答辩论文)
1-基于单片机的城市轨道交通列车超速防护系统_里程表设计(原理图+PCB+源码+仿真工程+答辩论文) 文章目录 1-基于单片机的城市轨道交通列车超速防护系统_里程表设计(原理图+PCB+源码+仿真工程 ...
- C语言成绩统计源代码,C语言课程设计学生成绩管理系统+源码
<C语言课程设计学生成绩管理系统+源码>由会员分享,可在线阅读,更多相关<C语言课程设计学生成绩管理系统+源码(25页珍藏版)>请在人人文库网上搜索. 1.简易教学管理系统的设 ...
- java毕业设计 ssm公寓宿舍后勤管理系统(含源码+论文)
文章目录 1 项目简介 2 实现效果 2.1 界面展示 3 设计方案 3.1 概述 3.2 系统流程 3.2.1 系统开发流程 3.2.2 系统操作流程 3.3 系统结构设计 4 项目获取 1 项目简 ...
- 网络工程毕业设计 SSM企业公寓宿舍后勤管理系统(源码+论文)
文章目录 1 项目简介 2 实现效果 2.1 界面展示 3 设计方案 3.1 概述 3.2 系统流程 3.2.1 系统开发流程 3.2.2 系统操作流程 3.3 系统结构设计 4 项目获取 1 项目简 ...
- 毕业设计 Spring Boot大学生社团管理系统(含源码+论文)
文章目录 1 项目简介 2 实现效果 2.1 界面展示 3 设计方案 3.1 概述 3.2 系统流程 3.3 系统结构设计 4 项目获取 1 项目简介 Hi,各位同学好呀,这里是M学姐! 今天向大家分 ...
- java毕业设计 Vue网上购物商城系统(含源码+论文)
文章目录 1 项目简介 2 实现效果 2.1 界面展示 3 设计方案 3.1 概述 3.2 系统开发流程 3.3 系统结构设计 4 项目获取 1 项目简介 Hi,各位同学好呀,这里是M学姐! 今天向大 ...
- 毕业设计 Spring Boot的垃圾分类管理系统(含源码+论文)
文章目录 1 项目简介 2 实现效果 2.1 界面展示 3 设计方案 3.1 概述 3.2 系统流程 3.2.1 系统开发流程 3.2.2 登录流程 3.3 系统结构设计 4 项目获取 1 项目简介 ...
- 毕业设计 Spring Boot的药品管理系统(含源码+论文)
文章目录 1 项目简介 2 实现效果 2.1 界面展示 3 设计方案 3.1 概述 3.2 系统流程 3.2.1 添加信息流程 3.2.2 操作流程 3.2.3删除信息流程 3.3 系统结构设计 4 ...
最新文章
- Castle ActiveRecord学习实践(4):实现One-Many关系的映射
- gcc 使用 stdio.h
- 发布地图服务属性表_Web3D地图来了!腾讯位置服务正式版发布!
- 免费的FTP linux 服务器中文,linux ftp服务器的搭建和中文字体乱码的解决
- html5哪个输入字段必填,HTML5:如何使用“required”属性和“radio”输入字段
- jface_使用JFace Viewer延迟获取模型元素
- mac java版本 不一致_mac实现不同版本的jdk切换
- 测试Markdown
- Qt Ctreator搭配VS2013调试——整合QML/C++调试需要的从属调试引擎无法被创建
- 用sysprep制作可以导入MDT的镜像
- CuteFTP9.0安装,破解,服务器传递文件。
- 当上拉加载更多即ion-content遇上slideBox的时候
- 一本通1325:【例7.4】 循环比赛日程表
- android scroller,高级UI第四十四篇:Android Scroller详解
- 微信自定义菜单和个性化菜单添加emoji表情(兼容ios和安卓,防止小方框)
- 京东网站页面编写(HTML、CSS、JS),包括京东秒杀的倒计时、轮播图等功能
- 删除苹果自带软件后果_苹果自带的音乐软件有多香?3个月试用期后我删了其它APP...
- 数据结构与算法(陈越版)第五讲 (树下)树的应用——集合及其运算
- 中级计算机职称哪个可以挂靠,2016年中级职称挂靠哪个证书更值钱?
- 2021/11/13