标签:引脚 手机 member password 语言 dashboard mic archive board
前言
树莓派(Raspberry Pi,RPi)是专门为学生计算机编程教育而设计,只有信用卡大小的卡片式电脑,可以运行Linux或者Windows 10 IoT Core操作系统。本文将利用树莓派和UWP(Universal Windows Platform)开发技术搭建一个可以实时监控的气象站系统。
硬件和涉及技术
硬件部分:
开发部分:
操作系统的下载与安装:
如下图:
Windows Device Portal:
在同一网络环境下的浏览器输入树莓派的IP地址,端口为8080,回车后会提示输入用户名和密码。默认用户名为Administrator,密码为烧录操作系统时设置的密码,如果忘记密码则只能重新安装。登陆成功后会看到树莓派开发板的当前操作系统下的详细信息,应用程序管理界面,设置默认程序以及开机自启动等。
实现
MQTT通信:
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议。经过多年的发展,MQTT在各个领域的应用均有凸显,它可以作为手机客户端的消息推送工具,并且在安卓应用中有比较大的占比。作为一款专为物联网设计的通信协议,MQTT具有在低带宽、不稳定的网络环境下正常工作的特性。它的消息传递有三种模式:
关于MQTT服务器的搭建可以参考:http://blog.csdn.net/yannanxiu/article/details/52703946
MQTT在UWP下的使用可以参考:http://www.cnblogs.com/Yixin-ran/archive/2016/10/21/mqtt.html
要在UWP下使用MQTT需要安装nuget包m2mqtt
在这里我还是贴一下MQTT的连接代码:
public class Mqtt : MqttClient { public Mqtt(string host) : base(host, 61613, false, MqttSslProtocols.None) { Connect(Guid.NewGuid().ToString(), "admin", "password"); Subscribe(new string[] { "atmo" }, new byte[] { MqttMsgBase.QOS_LEVEL_EXACTLY_ONCE }); // PostData("Hello World!"); } public void RequestData(string msg) { Publish("atmo", Encoding.UTF8.GetBytes(msg)); } public void PostData(string msg) { Publish("atmo", Encoding.UTF8.GetBytes(msg)); } }
Sqlite实现:
要在UWP下使用Sqlite需要先安装VS扩展Sqlite for Universal Windows Platform和Nuget包SQLite.Net-PCL。关于sqlite的详细使用方法参照:http://www.cnblogs.com/yanxiaodi/p/4941312.html
下面是本系统中Database类:
public class DataBase : SQLiteConnection { public static string path = Path.Combine(ApplicationData.Current.LocalFolder.Path, "atmo.db"); public DataBase() : base(new SQLitePlatformWinRT(), path) { CreateTable<DataModel>(); } }
INotifyPropertyChanged接口实现
public class ViewModelBase : INotifyPropertyChanged { public event PropertyChangedEventHandler PropertyChanged; protected void OnPropertyChanged([CallerMemberName]string name = "") { PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(name)); } }
树莓派GPIO图
硬件连接图:
传感器引脚图:
项目地址:https://github.com/yixinin/Yixin.Atom
该项目还不完善,欢迎大家补充和指正!
有任何问题可以联系我的Email:xingran1994@live.com
标签:引脚 手机 member password 语言 dashboard mic archive board
原文地址:http://www.cnblogs.com/Yixin-ran/p/WeatherStation.html