当前位置:文档之家› 智能窗户控制系统软件说明

智能窗户控制系统软件说明

智能窗户控制系统软件 V1.0 设计说明 目录 前言 .......................................... 1 第一章 软件总体设计 . ............................................... 1 1.1. 软件需求概括 . .................................................. 1 1.2. 定义 . ....................................................... 1 1.3. 功能概述 . .................................................... 1 1.4. 总体结构和模块接口设计 . ............................................ 2 第二章 控制系统的总体设计 . ............................................... 3 2.1. 功能设计 . .................................................... 3 第三章 软件控制系统的设计与实现 . ............................................... 5 3.1. RF 解码过程程序设计介绍 ......................... 5 3.2. RF 对码过程设计 ............................. 6 3.3. 通信程序设计 . .................................................. 8 3.4. IIC 程序设计介绍 ............................. 9 3.5. 接近开关程序设计 . ............................................... 12 3.6. 震动开关检测程序设计 . ............................................ 13 3.7. 墙面按键程序设计 . ............................................... 15 第四章 智能窗户控制系统的设计 . .................................................. 17 第五章 实测与结果说明 . .................................................... 18 第六章 结论 . ............................................................. 18、八 、亠 前言

目的 编写详细设计说明书是软件开发过程必不可少的部分, 其目的是为了使开发人员在完成 概要设计说明书的基础上完成概要设计规定的各项模块的具体实现的设计工作。

第一章 软件总体设计

1.1. 软件需求概括 本软件采用传统的软件开发生命周期的方法, 采用自顶向下, 逐步细化, 模块化编程的 软件设计方法。 本软件主要有以下几方面的功能 (1) RF 遥控解码

(2) 键盘扫描

(3) 通信

(4) 安全检测

(5) 电机驱动

1.2. 定义

本项目定义为智能遥控窗户系统软件。它将实现人机互动的无缝对接,实现智能关窗, 遥控开关窗户,防雨报警等功能。

1.3. 功能概述

1. 墙体面板按键控制窗户的开 / 关

2. RF遥控器控制窗户的开/关

3. 具有限位,童锁等检测功能

4. 实时检测大气中的温湿度,下雨关窗

5. 具有防盗,防夹手等安全性能的检测 1.4. 总体结构和模块接口设计 主要软件模块 ARM控制模块,EEPRO模块,RF解码模块,双机通信模块,温湿度检测 模块,限位检测模块,振动检测模块,电机驱动模块,蜂鸣器模块,键盘模块等组成,以下 是本次设计各个模块的方块图 ; 图1.0系统模块方框图 第二章控制系统的总体设计 2.1. 功能设计 各主要模块的程序设计主要包括基于芯唐 MO516LD单片机的主控设备的程序设计, 基于433M无线通信模块的程序设计,基于 HTU20D的温湿度检测模块程序设计,以及基于 MS32距离检测模块的程序设计等。软件的主要工作流程如下图;

图2.1按键板程序设计流程 图22驱动板程序设计流程第三章 软件控制系统的设计与实现 3.1. RF 解码过程程序设计介绍 1. 遥控器功能介绍 用 433M 遥控器发出左窗户正转,右窗户正转,停止信号等,安装在墙体的控制电路接 收到控制信号后, 根据遥控命令来控制电机的运行状态, 从而达到远距离对控制窗户的打开、 闭合和停止。 无线遥控主要用到 433M无线遥控器,下面介绍 433M遥控器: 数据收发模块的工作频率为 433M采用声表谐振器 SAW稳频,频率稳定度极高,当环 境温度在—25〜+ 85度之间变化时,频飘仅为3ppm/度。特别适合多发一收无线遥控及数据 传输系统。声表谐振器的频率稳定度仅次于晶体,而一般的 LC振荡器频率稳定度及一致性 较差,即使采用高品质微调电容,温差变化及振动也很难保证已调好的频点不会发生偏移。 数据模块具有较宽的工作电压范围 3〜12V,当电压变化时发射频率基本不变 ,和发射模 块配套的接收模块无需任何调整就能稳定地接收。当发射电压为 3V时,空旷地传输距离约 20〜50米,发射功率较小,当电压 5V时约100〜200米,当电压 9V时约300〜500米,当 发射电压为

12V时,为最佳工作电压,具有较好的发射效果,发射电流约 60毫安,空旷地

传输距离 700〜 800 米,发射功率约 500 毫瓦。当电压大于 l2V 时功耗增大,有效发射功率 不再明显提高。 这套模块的特点是发射功率比较大, 传输距离比较远, 比较适合恶劣条件下 进行通讯。天线最好选用 25 厘米长的导线,远距离传输时最好能够竖立起来,因为无线电 信号传输时收很多因素的影响, 所以一般

实用距离只有标称距离的一半甚至更少, 这点需要 开发时注意。 数据模块采用ASK方式调制,以降低功耗,当数据信号停止时发射电流降为零, 数据信 号与发射模块输入端可以用电阻或者直接连接而不能用电容耦合, 否则发射模块将不能正常 工作。数据电平应接近数据模块的实际工作电压,以获得较高的调制效果。 遥控器在按键按下后,周期性地发出同一种 32位二进制码,周期约为 108ms。一组码 本身的持续时间随它包含的二进制 "0"和"1"的个数不同而不同,大约在 45〜64ms之间。 当一个键按下超过 36ms,振荡器使芯片激活,将发射一组约 64ms的编码脉冲,这64ms 发射代码由一个起始码(10ms), —个结束码(6ms),三位地址码,这三位分别是,低8位地址 码 (8ms~12ms), 中 8 位地址码 (8ms~12ms), 高 8 位地 址码 (8ms~12ms) 和 8 位数据 码 (8ms~12ms)。

2. 代码宽度算法: 24位地址码的最短宽度: 1.0 X 24=24ms 16位地址码的最长宽度: 1.5ms X 24=33.6ms。

解码的关键是如何识别 "0 和"1", 代码格式 (以接收代码为准 , 接收代码与发射代码反 向)。从位的定义我们可以发现"0"、"1"均以0.5ms的低电平开始,不同的是高电平的宽度不 同,"0" 为 1ms,"1" 为 1.5ms, 所以必须根据高电平的宽度区别 "0" 和"1" 。如果从 0.5 ms 低电 平过后,开始延时, 0.5ms 以后,若读到的电平为低,说明该位为 "0" ,反之则为 "1" ,为了 可靠起见,延时必须比 0.56ms 长些,但又不能超过 1.5ms, 否则如果该位为 "0" ,读到的已 是下一位的高电平,因此取 (1.5ms+0.5ms)/2=1ms最为可靠,一般取 1ms左右均可;根据码 的格式,应该等待 10ms的起始码和6ms的结果码完成后才能读码。 3. RF解码 根据以上分析可得出解码程序流程如下: 有信号产生中断T EA清零T延时小于 10ms(低电平)T等待高电平的到来T延时小于 4.5ms(高电平)T等待下一次高电平的到来T延时 1ms左右T读区P3.2脚电平值T再等待下 一次高电平的到来T延时 1左右T读取P3.2脚电平值,依次取得32位代码,前24位为识别 码,后8位既为8位数据码,RF的解码流程框图见 3.1 o

3.2. RF对码过程设计 每个家庭的窗户都有自己的遥控器, 每个遥控器,可以独立的控制 5扇窗户,那么如何 让遥控器和窗户一一对应呢。在遥控器上,我们设置有 5个对码按键,分别设置为 1号,2 号,3号,4号,5号。例如按下1号,表示后续按键的控制按键是对 1号窗户进行控制, 按下2号,表示后续的遥控控制是对 2号按键进行控制。那么如何让遥控器识别到窗户的号 码呢。这就要再客户使用之前先进行对码, 对码是整个程序的设计要点和难点之一, 对码过 程大体如下。

相关主题