广嵌智能小区.docx

上传人:b****7 文档编号:10721412 上传时间:2023-02-22 格式:DOCX 页数:54 大小:686.79KB
下载 相关 举报
广嵌智能小区.docx_第1页
第1页 / 共54页
广嵌智能小区.docx_第2页
第2页 / 共54页
广嵌智能小区.docx_第3页
第3页 / 共54页
广嵌智能小区.docx_第4页
第4页 / 共54页
广嵌智能小区.docx_第5页
第5页 / 共54页
点击查看更多>>
下载资源
资源描述

广嵌智能小区.docx

《广嵌智能小区.docx》由会员分享,可在线阅读,更多相关《广嵌智能小区.docx(54页珍藏版)》请在冰豆网上搜索。

广嵌智能小区.docx

广嵌智能小区

广嵌智能小区

广州广嵌电子科技有限公司

 

广州广嵌数码智能小区控制系统详细设计书

 

项目名称:

广州广嵌数码智能小区控制系统

项目类别:

技术类

项目编制:

项目审批:

 

一引言

(一)编写目的

概要设计主要的目的是把系统划分为各个功能模块,并且定义好模块之间的相互关系和接口,接口必须清晰而无二义性,而且参数说明清晰而有扩展性。

模块的接口是作为单元测试的依据的。

另外一个目的就是通过划分的模块,项目经理可以进行任务的分工。

(二)术语

智能小区室内中央控制器:

业主所在家中的中央控制设备,带LCD真彩屏,附带触摸功能,可以进行家电控制,可进行语音通话,可以接收到各种的社区消息。

智能小区栋门口机:

业主所在单元门口设备,带LCD真彩屏,附带触摸功能,按键操作,可进行语音通话,外带门禁模块。

智能小区媒体终端机:

业主所在社区的媒体广告设备,带LCD真彩屏,附带触摸功能,可显示最新的社区广告以及播放社区服务中心播放的视频媒体。

无线技术:

可外接wifi模块,支持TCP/IP协议的网络传输。

(三)参考文献

<<软件工程导论>>朱少民清华大学出版社

二系统概述

(一)系统说明

图一广州广嵌数码智能小区控制系统物理拓朴结构图

广州广嵌数码智能小区控制系统:

1.智能小区室内中央控制器可以通过有线或无线WIFI局域网的方式,控制家用电器控制,家庭安防控制,家庭监视检测控制,家庭信息控制,栋(户)门口机语音对讲,家庭娱乐控制,家庭环境控制.

2.智能小区栋门口机可以通过有线或无线WIFI局域网的方式,实现来访用户身份确认、开关大门以及门口与室内的语音对讲.

3.智能小区媒体终端机可以通过有线或无线WIFI局域网的方式,实现社区内广告的发布以及多媒体信息的播放.

根据用户需求另可以另外实现以下功能:

1.电脑可以通过Internet远程控制家智能小区中央控制器,来控制家居各种电器及相关设备场景监控.

2.手机可以通过GPRS远程监控和控制家居各种电器及相关设备场景监控.

(二)系统任务

1系统目标

广州广嵌数码智能小区控制系统,是我公司根据国内外智能建筑发展的情况,利用公司多年小区住宅弱电的产品的研究、生产、施工、应用中所积累的丰富经验,投入一定量的人力和财力,所决策的开发项目;该项目是集信息技术、网络技术、传感技术、无线电技术、模糊控制技术等多种技术的综合应用,硬件核心为国际知名品牌的前沿芯片S3C2440(嵌入式CPU),软件开发平台为LIUNX系统,利用现代的宽带信息网络和无线电网络平台,将家电控制、家庭环境控制,家庭监视监测,家庭安全防范、小区信息交流,小区娱乐、小区管理和服务集为一体构成的智能系统产品,是具有较强的技术性和前瞻性的新产品。

2运行环境

嵌入式Linux运行环境.(内核版本:

linux2.6)

3与其它系统关系

广州广嵌数码智能小区控制系统分为三个子系统:

A.智能小区室内中央控制器

B.智能小区栋门口机

C.智能小区媒体终端机

其结构关系如下图所示:

 

图二智能小区控制系统模块结构关系图(仅供参考)

(三)需求规定

1功能需求

根据对目前市场上流行的智能小区产品的分析,结合市场的需求,以下几点是目前所关注的:

✧对讲

✧家居智能

✧安防信息处理和社区服务

✧多媒体

 

(1).智能小区室内中央控制器

该控制器可以方便用户控制家中各种家用电器(风扇或空调的调速,窗帘的控制,用户可以根据自己的需求来各种情景模式来控制家电);用户可以足不出户也能享受到社区的各种服务;在繁忙的工作之余,可以通过网络远程监控家中发生的各种,时刻了解家中的情况;同时,与日常生活密切相关的安防问题(如瓦斯,红外等),智能小区中央控制器会一一作记录,并可以通过短信等方式实时告知业主。

(2).智能小区栋门口机

业主在出入的时候可以通过密码来开门,方便社区人员的管理;客人来访的时候可以通过该设备呼叫业主打开楼底的单元大门;同时也可以将陌生人拒于大门之外。

(3).智能小区户媒体终端机

业主在小区内运动休闲的时候,可以通过媒体终端机了解到社区的最新通知信息以及可以浏览社区服务动心播放的多媒体广告。

2性能需求

(1).智能小区中央处理器规格参数:

CPU类型:

ARM9S3C2440

存储器:

64MBROM、64MBSDRAM

显示屏:

3.5"TFTLCD320*240像素65535色

音频输出:

内置16Bit单声道扬声器

物理接口:

以太网接口

通迅方式:

TCP/IP

操作系统:

LINUX

支持网络:

WiFiTCP/IP协议

(2).智能小区栋门口机规格参数:

CPU类型:

ARM9S3C2440

存储器:

64MBROM、64MBSDRAM

显示屏:

3.5"TFTLCD320*240像素65535色

音频输出:

内置16Bit单声道扬声器

物理接口:

以太网接口

通迅方式:

TCP/IP

操作系统:

LINUX

支持网络:

WiFiTCP/IP协议

(3).智能小区媒体终端机规格参数:

CPU类型:

ARM9S3C2440

存储器:

64MBROM、64MBSDRAM

显示屏:

通过VGA显示接口将数据显示到15"TFTLCD

音频输出:

内置16Bit单声道扬声器

物理接口:

以太网接口

通迅方式:

TCP/IP

操作系统:

LINUX

支持网络:

WiFiTCP/IP协议

3数据要求

(1).各个模块牵涉到的数据描述

从门口机向小区中心获取用户信息

数据:

文本信息

语音对讲功能:

A.访客确认

B.来访通话

数据:

音频数据

C.远程开锁

数据:

控制指令数据

媒体娱乐功能

A.媒体播放

数据:

音频+视频数据

B.图片广告

数据:

图片+文字信息

家电控制

A.本地控制

B.不同的家电控制

C.传感数据采集与显示

数据:

控制指令数据

窗帘控制

A.控制窗帘的上拉与下放动作

数据:

控制指令数据

灯光控制

A.控制灯光的变化

数据:

控制指令数据

社区服务

A.小区信息发布

数据:

文字信息

三总体设计(参考图,需按照实际功能进行设计)

(一)系统物理结构

1系统主要流程图

(图三)系统整体运行流程图

2设备清单

A.智能小区室内中央控制器

B.智能小区栋门口机

C.智能小区媒体终端机

D.智能开关插座+室内家电智能控制器

(二)软件流程图及逻辑处理序列图

1呼叫逻辑序列图

(图五)呼叫逻辑序列图

2.媒体娱乐处理流程图

(图九)媒体娱乐处理流程图

 

3.家电控制处理流程图

(图十一)家电控制处理流程图

 

4.窗帘控制处理流程图

 

(图十二)窗帘控制处理流程图

5.灯光控制处理流程图

(图十三)灯光控制处理流程图

 

6.安防处理流程图

(图十七)安防处理流程图

 

四模块功能描述

(一)智能小区室内中央控制器

1.语音对讲功能

A.访客确认

C.远程开门

2.家电控制功能

A.本地无线控制

B.包括不同房间的不同的家电控制

C.定时获取及刷新各设备的状态

(二)智能小区栋门口机

1.门禁密码开锁功能

2.呼叫单元内住户功能

3.小区信息发布显示

(三)智能小区媒体终端机

1.小区信息发布显示

2.小区媒体广告播放

五接口设计

(一)用户界面

//请参阅<<广州广嵌智能小区系统_人机交互UI设计>>

(二)硬件接口

//请参阅<<广州广嵌数码智能小区系统_硬件设计>>

(三)软件接口

//定时器相关操作

ClassTimer

//呼叫流程的实现

ClassBase_Net_Work_Call

//泛型的数据结构

ClassList_T

//家电设备注册

Class_Device_Register

//家电控制

ClassDevice_Control

//传感数据监控

ClassDist_Monitor

//网络参数设置

ClassNet_Work_Param

//音频参数设置

ClassAudio_Param

//安防处理函数

ClassAlarm_Proc

//信息发布

ClassInfoPublic

//音视频的相关处理过程

ClassSML_Audio_Video

(四)通信接口

1.定时器相关操作通信接口

ClassTimer

{

public:

//函数功能:

初始化定时器的ID值

Timer(unsignedlongtimeId);

//函数功能:

初始化定时器的ID值

Timer();

//函数功能:

析构函数,如果id非0,再次关定时器

~Timer();

//函数功能:

开启一个定时器

unsignedlongSetTimer();

//函数功能:

关闭一个定时器

intKillTimer(unsignedlongtimeId);

}

 

2.呼叫监视的基类

ClassBase_Net_Work_Call:

publicBase_Net_Work

{

public:

//函数功能:

同时把给m_ptrTelNum申请空间,并赋值

Base_Net_Work_Call(constchar*str);

//函数功能:

析放内存空间

virtual~Base_Net_Work_Call();

//函数功能:

通过电话号码寻找对方的ip,最终发起呼叫

virtualintStart_Action();

//函数功能:

挂机操作

virtualintStop_Action();

//函数功能:

接通以前的取消动作

virtualintCancel_Action();

//函数功能:

接受对方的呼叫

intAccept_Call();

//函数功能:

当一个新的呼叫来的时候调用,本机响铃,然后给对方发一个响

//铃的消息,同时把对方的ip保存到m_ptrLocalIp

intAccept_Call();

//函数功能:

处理对方发过来的回铃消息开始响铃声

intProcRing();

//函数功能:

在接通后会发一个确认的消息,处理这个消息以后双方的通话正

//式建立

intProcAnswerAck();

//函数功能:

被叫方接通后会给发起方一个接通的消息,这个函数就是处理这

//个消息

intProcAnswer()

//函数功能:

挂机后会给对方发一个挂机的消息,这个函数就是处理这个消息

//处理完这个消息以后,正式挂机

intProcBye();

//函数功能:

在没有接通之前取消该会话会给对方发一个取消的消息,这个函

intProcCancel();

}

3.呼叫操作通信接接口

ClassBase_Net_Work_Watch:

publicBase_Net_Work

{

public:

//函数功能:

同时把给m_ptrWatchIp申请空间,并赋值

Base_Net_Work_Watch(constchar*str);/

//函数功能:

析放内存空间

virtual~Base_Net_Work_Watch();

//函数功能:

通过这个ip,发出监视的信令

virtualintStart_Action();

//函数功能:

停止监视操作

virtualintStop_Action();

//函数功能:

处理对方发过来接受监视的消息

intProcWatchAnswer();

//函数功能:

处理对方发出主动取消监视的消息

intProcWatchCancel();

//函数功能:

在监视的过程中可以发出一个开锁的消息

intOpenLock();

//函数功能:

门口机会给中央控制器反馈一个开锁的消息,这个就是处理这个

//消息,作相应的显示处理

intProcLock();

}

4.泛型的数据结构操作通信接口定义

ClassList_T

{

public:

//函数功能:

给头节点是申请内存空间

List_T();

//函数功能:

清理链表

~List_T();

//函数功能:

初始化头结点

int_list_init(_list_t*li);

//函数功能:

获得链表的大小

int_list_size(const_list_t*li);

//函数功能:

用这个函数来遍历链表,检查是否到达链表的尾部

int_list_eol(const_list_t*li,intpos);

//函数功能:

添加节点

int_list_add(_list_t*li,void*element,intpos);

//函数功能:

获取某个位置的节点

void*_list_get(const_list_t*li,intpos);

//函数功能:

删除节点

int_list_remove(_list_t*li,intpos);

}

5.家电设备注册通信接口

Class_Device_Register

{

public:

//函数功能:

初始化一些数据信息

_Device_Register();

//函数功能:

清理结构

~_Device_Register();

//函数功能:

根据具体的设备类型来选定该设备名字

voidSetDeviceName(_Device_Node_t)

//函数功能:

获取设备的注册信息,作具体的处理

voidDealWithDataFromWF(_Device_Node_t)

//函数功能:

由设备的注册的设备类型找到对应控制模式

intFindModeByTyp(_Device_Node_t)

//函数功能:

将设备的名字与具体的设备信息,写到一个文件中去,免得重复去

//注册

voidWriteInfoToFile(char*szName,_Device_Node_tt)

}

6.家电控制通信接口

ClassDevice_Control

{

public:

//函数功能:

构造函数

Device_Control()

//函数功能:

析构函数

~Device_Control();

//函数功能:

根据传入的设备的类型,要对设备进行怎样的控制(例如开灯)

//找到相应的命令参数,填充具体的控制命令的结构体

intGetDeviceOrderByType(_Device_Control_t*t,intnType,intControlMode);

//函数功能:

填充具体的控制命令的结构体后,发送命令到设备中去

intSendOrderToDevice(_Device_Control_t*t);

}

{

public:

//函数功能:

选择摄像头

voidChooseCamera(intnum);

//函数功能:

摄像头具体的动作

voidCameraAction(inteast,intnorth,intwest,intsouth);

//函数功能:

视频数据的传输

voidTransCameraData();

}

7.网络参数设置通信接口

ClassNet_Work_Param

{

public:

Net_Work_Param()

~Net_Work_Param();

//函数功能:

设定本机的ip,把它写到网卡里面去

intSetLocalIP(unsignedchar*szip);

//函数功能:

设定本机的mac地址,把它写到网卡里面去

intSetLocalMacAddr(unsignedchar*szip);

//函数功能:

获取对应的ip地址,按上面表示的右边的整数

intGetIpByType(unsignedchar*szip,intnType);

//函数功能:

设定对应的ip地址,按上面表示的右边的整数

intSetIpByType(unsignedchar*szip,intnType);

//函数功能:

从某个特定的文件中把这些参数读出来到一个结构中去

intReadIpFromFile(_Net_Work_Param_t*t,unsignedchar*szfile);

//函数功能:

当这些参数发生改变时要写入文件

intWriteIpToFile(_Net_Work_Param_t*t,unsignedchar*szfile);

}

8.音频参数设置通信接口

ClassAudio_Param

{

Public:

//函数功能:

设置麦克风音量

intDEV_SetMicVolume(intfd,charcValue);

//函数功能:

设置左右声道的取值

intDEV_SetMicLevel(intfd,charcValue);

//函数功能:

设置左右声道的取值

intDEV_SetMicMute(intfd,charcValue)

//函数功能:

设置声音取值0~0x40数值越大声音越少

intDEV_SetPhoneVol(intfd,charcValue);

//函数功能:

设置声音取值数值越大声音越少

intDEV_SetDigitalVol(intfd,charcValue);

//函数功能:

设置声音取值数值越大声音越大by1-dB

intDEV_SetSPKLevel(intfd,charcValue);

//函数功能:

放音静音

intDEV_SetDACMute(intfd,charcValue);

//函数功能:

恢复至默认

intDEV_SetDefault(intfd);

//函数功能:

设置采样率

intDEV_SetSampleRate(intfd,inttype);

//函数功能:

打开声卡设备

intDEV_SoundOpen();

}

9.安防处理通信接口

ClassAlarm_Proc

{

public:

Alarm_Proc();

~Alarm_Proc();

//函数功能:

解析安防数据,然后解析成对应的结构,

intParserAlarmData(FEEDBACK_T*pst,unsignedchar*data,intlen);

//函数功能:

处理安防数据,画面或声音报警

intDealWithAlarmData(FEEDBACK_T*pst);

//函数功能:

保存安防报警消息,在里面架上系统的时间,存入一个队列中去

//在送到某个界面来显示最近发生的30条报警,循环使用

intSaveAlarmData(FEEDBACK_T*pst);

//函数功能:

设置安防通道的具体信息,放到一个结构里面保存

intSaveAlarmChannel(CHANNELPARAM_T*pst,CHANNEL_T*st,intnum);

}

10.小区信息发布通信处理

ClassInfoPublic

{

public:

//函数功能:

初始化表头

InfoPublic();

//函数功能:

清理结构

~InfoPublic();

//函数功能:

解析网络中发过来的数据

voidDealWithData(Net_S*st,_Info_pub_t*si);

//函数功能:

将解析完的数据包加入到链表中去

voidAddToList(_Info_pub_t*si);

}

11.门禁处理通信接口

ClassPasswd

{

public:

Passwd();

~Passwd();

//函数功能:

收到密码数据后,进入处理程

voidPasswd_proc(char*pPasswdCmd,intlen);

//函数功能:

哈希函数获得索引值

intPasswd_info_hash(IC_INFO*pPasswdInfo);

//函数功能:

初始化哈希表,并把密码数据加入到链表中去

intPasswd_list_init(C_LIST*st);

//函数功能:

查询远程用户信息中是否有该密码的记录

Passwd_INFO*get_Passwd_info(charPasswdID[]);

}

12.音视频处理过程通信接口

ClassSML_Audio_Video

{

public:

SML_Audio_Video();

~SML_Audio_Video();

//函数功能:

采集音视频数据

intSML_Capture_Start(EN_MEDIA_TYPEenType,VIDEO_CAPTURE_T*pstVideo,AUDIO_CAPTURE_T*pstAudio);

//函数功能:

停止采集

intSML_Capture_Stop(EN_MEDIA_TYPEenType,VIDEO_CAPTURE_T*pstVideo,AUDIO_CAPTURE_T*pstAudio);

//函数功能:

初始化一些播放的资源,创建缓冲区等

intSML_Play_Init();

//函数功能:

播放音视频函数,传入那个结构就播放那个

intSML_Play_Start(EN_MEDIA_TYPEenType,VIDEO_PLAY_T*pstVideo,AUDIO_PLAY_T*pstAudio);

//函数功能:

停止音视频的播放

intSML_Play_Stop(EN_MEDIA_TYPEenType,VIDEO_PLAY_T*pstVideo,AUDIO_PLAY_T*pstAudio);

//函数功能:

销毁视频相关的资源

intSML_PlayVideoDestroy(VIDEO_PLAY_T*pstVideo);

//函数功能:

销毁音频相关的资源

intSML_PlayAudioDestroy(AUDIO_PLAY_T*pstAudio);

//函数功能:

初始化视频播放相关的参数

i

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 文学研究

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1