# 基于OpenHarmony的智能阳台
## 一、概述
基于OpenHarmony的智能阳台能够实时监测室外环境是否下雨,超过设定的阈值时本地启动关窗马达,并上报关窗信息;并且能够对接华为IoT平台,实时查看到当前状态(窗户开关情况、室外是否下雨等状态),本设备属于环境监测设备。
### 1.实物展示图
我们使用拓维信息-OpenHarmony开发板+雨滴传感器+电机来模拟智能阳台设备。
![1](https://image2-1310563882.cos.ap-nanjing.myqcloud.com/1.png)
### 2.系统架构图
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/2.jpg" alt="2" style="zoom:80%;" />
根据系统架构图,可以看出基于OpenHarmony的智能阳台是主要是由三部分组成:
1. 数据采集:由雨滴传感器采集室外的情况并发送给开发板;
2. 信号传送:开发板接收到传感器的数据进行判断,并且发送判断后的信号给电机驱动模块以及将数据上传到华为IoT平台;
3. 执行部件:电机控制模块根据单片机的信号控制电机执行相应的动作。
### 3.系统流程图
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/3.jpg" alt="3" style="zoom: 80%;" />
### 4.系统原理图
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/4.png" alt="4" style="zoom:80%;" />
## 二、快速上手
### 1.硬件准备:
1)预装windows系统的PC机
2)拓维信息 Niobe Wifi IoT开发板套件
3)雨滴传感器模块一套
4)电机及驱动电机模块一套(步进电机、直流电机、舵机等都是可以)
5)USB Type-C线(Windows工作台通过USB与Niobe Wifi IoT 开发板连接)
其中具体硬件的详细信息如下:
#### 硬件一:Niobe Wifi IoT开发板
拓维Niobe开发板是一块专门基于OpenHarmony 3.0LTS版本设计的开发板,板载高度集成了2.4GHz WLAN SoC芯片Hi3861V100。
Hi3861V100芯片集成高性能32bit微处理器、硬件安全引擎以及丰富的外设接口,外设接口包括SPI、UART、I2C、PWM、 GPIO和多路ADC
Hi3861V100芯片适应于智能家电等物联网智能终端领域。
![5](https://image2-1310563882.cos.ap-nanjing.myqcloud.com/5.png)
拓维信息-OpenHarmony开发板(Talkweb Niobe)的相关资料可查看官方文件:[开发板相关资料](https://gitee.com/talkweb_oh/niobe)
#### 硬件二:雨滴传感器模块
本项目选用雨滴传感器,目的是为了监测天气状况并转成AO电压输出。
(1)雨滴传感器采用FR-04双面材料,并用镀镍处理表面,具有抗氧化,导电性等性能。
(2)输出形式:模拟量AO电压输出。
(3)AO模拟输出,连接单片机的AD口检测滴在上面的雨量大小(雨量越大输出电压越小)。
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/6.png" alt="6" style="zoom:50%;" />
#### 硬件三:电机模块
(1)本项目选用直流电机目的是为了模拟窗户开关的情景(可根据自己的需要选择步进电机或者舵机也是可以的)。
电机正转一定角度表示开窗,反转一定角度表示关窗。
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/8.png" alt="8" style="zoom: 50%;" />
**注:直流电机的工作电压为5V左右。**
(2)本项目选用了直流电机故要另外选用L298N直流电机驱动模块,目的是驱动直流电机的运作。
该模块和控制端口的接口:控制直流电机时IN1、IN2和ENA为一组,IN1和IN2是逻辑信号,控制电机的正反转;OUT1和OUT2它们控制电机A,接在A+和A-。
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/7.png" alt="7" style="zoom:80%;" />
### 2.软件准备:
1)下载并安装虚拟机VMware Workstation:
- [VMware Workstation Player(免费版)](https://www.vmware.com/products/workstation-player/workstation-player-evaluation.html)
- [VMware Workstation Pro(专业版)](https://www.vmware.com/cn/products/workstation-pro.html)
2)下载Ubuntu20.04镜像:[Ubuntu20.04镜像](https://releases.ubuntu.com)
3)下载并安装MobaXterm工具:[MobaXterm工具](https://en.softonic.com/download/moba/windows/post-download)
4)下载并安装开发板USB驱动(CH341SER.EXE--CH340/CH341-USB转串口Windows驱动程序):[USB驱动](http://www.wch.cn/search?q=ch340g&t=downloads)
5)下载并安装VS Code编译器:[Visual Studio Code](https://code.visualstudio.com/)
6)下载HiBurn烧录工具:[HiBurn烧录工具](https://gitee.com/talkweb_oh/niobe/blob/master/applications/docs/tools/HiBurn.exe)
### 3.Linux编译环境配置:
开发基础环境由windows 工作台和Linux编译服务器组成。windows 工作台可以通过samba 服务或ssh 方式访问Linux编译服务器。其中windows 工作台用来烧录和代码编辑,Linux编译服务器用来编译OpenHarmony代码,为了简化步骤,Linux编译服务器推荐安装Ubuntu20.04。
#### (1)Ubuntu安装
- 在VMware中安装下载好的Ubuntu20.04。
- 安装完后在终端窗口输入语句获取ip地址:
```
ifconfig
```
获取IP地址后并记录下来,每个人的IP地址都不一样。
如果获取不成功(虚拟机连不上网络)尝试更换一下网络路径方式:虚拟机 --> 设置 --> 网络适配器 --> 网络路径
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/9.png" alt="9" style="zoom: 80%;" />
*注:如果查看IP地址的时候出现以下情况:
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/10.png" alt="10" style="zoom: 80%;" />
① 根据提示,输入以下命令,安装网络工具:
```
sudo apt install net-tools
```
② 如果还不行也可以安装一下VMware tools工具。
#### (2)安装samba服务共享文件夹
- 在/home/niobe/(niobe是我虚拟机的名字,根据个人虚拟机的情况来做调整)目录下新建一个文件夹命名为niobecode。
- 配置niobecode文件夹的读写权限。
```
sudo chmod 777 /home/niobe/niobecode
```
- 将新建的niobecode文件夹配置到/etc/samba/smb.conf中。
输入以下命令使用spt-get安装:
```
sudo apt-get install samba
```
查看sanba版本,以及是否安装成功:
```
samba
```
进入smb.conf文件配置:
```
sudo vi /etc/samba/smb.conf
```
- 在smb.conf文件最后加上以下语句:
```
[niobecode]
comment = samba home directory
path = /home/niobe/
public = yes
browseable = yes
public = yes
writeable = yes
read only = no
valid users = niobe
create mask = 0777
directory mask = 0777
#force user = nobody
#force group = nogroup
available = yes
```
添加上面语句后按下ESC后保存并退出:
```
:wq
```
设置samba的密码:
```
sudo smbpasswd -a niobe
```
重新启动samba:
```
sudo service smbd restart
```
- 然后在Windows环境下,右键我的电脑 -> 映射网络驱动器 -> 输入IP地址(在Ubuntu安装的步骤中获取的IP地址),把共享文件夹映射到本地。
- 成功后我们就可以在我的电脑里面的网络位置可以看到niobecode文件夹。
![image-20220114032622527](https://image2-1310563882.cos.ap-nanjing.myqcloud.com/11.png)
#### (3)MobaXterm通过ssh连接Ubuntu
- 在MobaXterm工具里 Session -> SSH 输入信息,远程地址(获取到的IP地址)。
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/12.png" alt="image-20220114025552556" style="zoom: 80%;" />
- 输入相关信息登录。
login as:输入虚拟机用户名
Password:输入虚拟机密码
成功登录后如下:
<img src="https://image2-1310563882.cos.ap-nanjing.myqcloud.com/13.png" alt="image-20220114025658985" style="zoom:80%;" />
#### (4)配置docker编译环境
- 可以在官网文档中查�
没有合适的资源?快使用搜索试试~ 我知道了~
knowledge-demo-smart-home-master.zip
共2000个文件
png:2264个
h:1268个
c:702个
0 下载量 62 浏览量
2023-03-25
09:41:34
上传
评论
收藏 677.92MB ZIP 举报
温馨提示
本仓库的样例都是基于智能家居,从客厅到卧室,从中控到sensor,开发者可以体验各种家居的开发样例,打造自己的家居体验,享受万物互联的快感。
资源推荐
资源详情
资源评论
收起资源包目录
knowledge-demo-smart-home-master.zip (2000个子文件)
lv_demo_printer_img_scan_example.c 9.14MB
background.c 2.97MB
lv_demo_printer_img_btn_bg_1.c 1.93MB
lv_demo_printer_img_btn_bg_4.c 1.93MB
lv_demo_printer_img_btn_bg_2.c 1.93MB
lv_demo_printer_img_btn_bg_3.c 1.93MB
lv_demo_printer_img_ready.c 1.72MB
img_lv_demo_music_cover_2.c 1.59MB
img_lv_demo_music_cover_1.c 1.59MB
img_lv_demo_music_cover_3.c 1.59MB
lv_demo_printer_img_printer2.c 785KB
img_cogwheel_argb.c 705KB
img_lv_demo_music_wave_bottom.c 604KB
img_lv_demo_music_wave_top.c 604KB
city_font_25.c 575KB
lv_demo_printer_img_phone.c 538KB
img_cogwheel_chroma_keyed.c 530KB
img_cogwheel_rgb.c 529KB
img_lv_demo_music_logo.c 498KB
img_lv_demo_music_btn_pause.c 430KB
img_lv_demo_music_btn_play.c 430KB
lv_demo_printer_img_cloud.c 388KB
imgbtn_green.c 353KB
imgbtn_blue.c 353KB
lv_demo_printer_img_internet.c 294KB
lv_demo_printer_img_print.c 294KB
lv_demo_printer_img_setup.c 285KB
img_lv_demo_music_btn_next.c 272KB
img_lv_demo_music_btn_prev.c 272KB
lv_demo_printer_img_usb.c 268KB
img_lv_demo_music_btn_list_pause.c 246KB
img_lv_demo_music_btn_list_play.c 246KB
lv_demo_printer_img_scan.c 221KB
lv_demo_printer_img_copy.c 217KB
lv_demo_printer_img_mobile.c 213KB
lv_font_roboto_28.c 176KB
my_font_35.c 147KB
lv_demo_printer_img_no_internet.c 126KB
lv_font_roboto_22.c 124KB
answer_icon.c 124KB
lv_demo_printer_icon_wifi.c 116KB
call_phone_icon.c 102KB
img_lv_demo_music_slider_knob.c 98KB
lv_demo_printer_icon_pc.c 97KB
lv_demo_printer_icon_eco.c 92KB
lv_demo_printer_img_wave.c 91KB
lv_demo_printer_icon_tel.c 88KB
lv_font_roboto_16.c 80KB
img_lv_demo_music_list_border.c 77KB
img_hand.c 64KB
lv_obj.c 64KB
lv_ta.c 62KB
lv_demo_printer_icon_bright.c 61KB
lv_draw_rect.c 60KB
lv_font_roboto_12.c 58KB
lv_demo_music_font_16_bold.c 53KB
upg_common.c 52KB
at_general.c 49KB
ssd1306_fonts.c 48KB
weather_font_15.c 48KB
ssd1306_fonts.c 48KB
ssd1306_fonts.c 48KB
lv_page.c 47KB
oc_mqtt_tiny.c 47KB
at_wifi.c 47KB
lv_demo_printer.c 46KB
lv_indev.c 46KB
lv_chart.c 46KB
img_lv_demo_music_btn_loop.c 42KB
img_lv_demo_music_btn_rnd.c 42KB
lv_tabview.c 41KB
lv_label.c 41KB
lv_btnm.c 39KB
lv_demo_printer_icon_hue.c 39KB
crypto.c 38KB
lv_demo_benchmark.c 38KB
lv_calendar.c 36KB
lv_ddlist.c 33KB
test1.c 33KB
lv_list.c 32KB
cmsis_liteos2.c 32KB
img_lv_demo_music_icon_1.c 32KB
img_lv_demo_music_icon_3.c 32KB
img_lv_demo_music_icon_2.c 32KB
img_lv_demo_music_icon_4.c 32KB
app_demo_spi.c 32KB
img_cogwheel_indexed16.c 31KB
iot_main.c 31KB
img_cogwheel_alpha16.c 30KB
lv_theme_alien.c 30KB
lv_demo_music_main.c 29KB
at_demo_hks.c 29KB
lv_table.c 29KB
lv_theme_nemo.c 28KB
lv_demo_widgets.c 28KB
lv_theme_material.c 28KB
lv_canvas.c 27KB
lv_roller.c 26KB
spi.c 26KB
lv_theme_night.c 26KB
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
资源评论
m0_72731342
- 粉丝: 2
- 资源: 1832
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功