APP下载

智能家居虚拟场景设计与实现

2014-04-04陈博付蔚薛震洪洋

物联网技术 2014年3期
关键词:漫游智能家居虚拟现实

陈博+付蔚+薛震+洪洋

摘 要:面向智能家居应用,以Unity 3D为虚拟现实开发平台,给出了用虚拟智能化家庭场景实现虚拟场景家电设备及环境监测设备的模型设计。平台中的虚拟人可以在虚拟场景中自由漫游,并且通过虚拟人手中的终端设备,实时家电控制并获得环境监测设备的实时数据,使得家庭控制更加生动形象,实现虚拟与现实的融合。虚拟场景的设计有助于智能家居的宣传、培训和展示,同时让用户通过远程操作,也可以体验到真实的智能家居系统,零距离展示智能家居实验室的科研成果。

关键词:智能家居;Unity 3D;虚拟现实;虚拟人

中图分类号:TP319.9 文献标识码:A 文章编号:2095-1302(2014)03-0066-04

0 引 言

随着“物联网”技术的飞速发展和信息时代的到来,智能家居作为物联网技术的一个实际运用,将成为未来二十年内一个新的经济增长[1]。虚拟现实技术近几年越来越受到各行各业的关注,已开始从实验室走向研究项目走向实际的应用,在军事、航天、建筑设计、旅游、医疗和文化娱乐及教育方面已有不少应用[2]。虚拟现实技术让用户可以对虚拟世界进行体验和交互作用,体验到二维动画所不具备的现场沉浸感[3]。

Unity 3D作为一款新兴的多平台游戏开发软件,能够实时地处理场景中的各种模型[4]。本文主要是通过Unity 3D技术创建一种全新的智能家居虚拟场景,实现了虚拟与现实的融合。虚拟场景改变了以前智能家居系统二维的人机交互界面,通过三维场景,非常容易便捷地控制虚拟设备和真实设备,增加了用户的交互性。虚拟场景的设计有助于智能家居的培训和展示,让用户通过远程操作也可以体验到真实的智能家居系统。

2 系统整体结构

虚拟场景中的模型通过3D Max 2012完成建模和贴图。用户可以在场景中通过鼠标和键盘自由移动和操作虚拟人,实现在场景中自由漫游,然后通过点击平板电脑,出现的交互式界面可以控制虚拟场景中灯光、风扇、空调和电视等家电设备。也能够看到虚拟场景中各种传感器的值,达到场景监控的目的。通过网络编程可以实现虚拟和现实的交互,Socket套接字发送智能家居实验室自主研发的协议到服务器,能够实现真实设备控制,并接收到真实传感器发回给虚拟场景中各种传感器的值,真正实现虚拟和现实的融合。智能家居虚拟场景的总体设计思路如图1所示。

图1 总体设计思路

从图1中可以看出,第一步就是对智能家居系统中各种模型数据采集,通过3D建模软件建立需要的模型,将贴图附着到建立好的模型上面,使模型更加具有真实感。人机交互设计是本系统的核心与难点,通过脚本的编写,完成控制界面的设计。用户通过发送消息指令,通过编程实现消息的捕捉,Unity 3D中通过对主摄像机的控制,实现虚拟场景中的漫游。

3 三维模型的构建

智能家居室内设计是虚拟场景中的主体部分,室内的建模主要运用的是形体构造表示的原理,使用建模工具3D Max 2012版从形状和结构上对家居室内部进行模拟设计。

室内设计的实现方案是根据室内设计规划方案,逐步分解和拆分为容易构造的简单模型,之后进行相交集合运算形成复杂的各种模型,同时采用材质纹理映射等辅助技术手段,以增加模型的真实感[5]。其具体步骤如下[6]:

(1)获得建模数据;

(2)确定模型的层次结构;

(3)进行可视建模过程;

(4)去除冗余多边形;

(5)使用纹理映射。

通过上述的建模步骤能够得到如图2所示的智能家居室内的各种模型,包括家具、家电、传感器等模型。通过把建好的模型导出为.FBX文件格式,然后在Unity 3D中导入建好的模型。

图2 3DMax建立的模型

4 虚拟场景控制与交互

4.1 风扇和空调的控制

要控制风扇和空调,首先我们得了解transform这个类,然后再通过旋转函数Rotate控制旋转的速度。调整虚拟场景中的风扇模型和空调模型,首先调整好风扇扇叶和空调扇叶的x,y,z的坐标,方便调整扇叶旋转的方向:

transform.Rotate(Vector3.down*30,Space.Self);//通过旋转扇叶来控制电扇

i.Rotate(Vector3.right*40*Time.deltaTime);//通过控制空调扇叶来控制空调

4.2 灯光的控制

灯光的控制首先要在灯光模型上面添加一个点光源point light,然后对这个点光源的属性进行修改,一般都是修改光照的范围、光照强度和颜色这几个属性,最后所编的C#脚本语言如下:

public void SetLightState(bool state)

{

if(state)

{

light.enabled=true;//使灯开

}

else

{

light.enabled=false;//使灯关

}

}

4.3 电视控制

要实现电视的实时播放,首先要将视频源拷贝到Assets文件夹里面,然后确保拷进来的视频源能够被U3D播放出来。一般将视频源附着到一个新建的平面上,然后通过增加这个物体的Material材质,并且将Movie视频文件给贴图,开始时画面是黑色,视频启动之后画面变成白色,就能正常播放视频文件了[7]。最后的代码如下:

void Start () {

//将视频附给添加的材质

renderer.material.mainTexture=mMovie;

//让视频可以循环播放

mMovie.loop=true;

}

void Update () {

}

public void OPenTV()

{

//视频播放时材质为白色

renderer.material.color=Color.white;

mMovie.Play();//播放视频

}

public void CloseTV()

{

//视频关闭时材质为白色

renderer.material.color=Color.black;

mMovie.Stop();//关闭视频

}

4.4 人机交互

Unity 3D展示模型时,用户通过人机交互界面,即可以控制场景中的各种家电设备,也可以实时监测家里面各种传感器的值。通过交互式展示智能家居中的各种设备,让用户对我们的系统有更加深入的了解,方便推广整个智能家居系统。创建完成之后的交互界面如图3所示,下面就是创建交互界面代码(里面通过Socket套接字实现虚拟与现实的实时控制):

void ControlFace()

{

//定义变量

int off=100,height=30,wide=150;

//初始化边框

Rect r = new Rect(off, 0, wide, height);

//制作IP地址的文本框

mIP=GUI.TextArea(r,mIP);

r.x += wide;

//制作端口号的文本框mPort=GUI.TextArea(r,mPort);

//接收新的IP地址

mSocket.mIPSend=mIP;

//接收新的端口号

mSocket.mPort=mPort;

r.x=off;

r.y += height;

if(GUI.Button(r,"开灯"))// button

{

//获得灯的组件,控制虚拟场景中的灯光

lightcontrol

l=mLight.GetComponent<

lightcontrol>();

// 控制虚拟场景中的灯光

l.SetLightState(true);

// 套接字控制真实场景中的灯光 mSocket

ChangeLightState(true);

}

//其他的按键同开灯一样

}

图3 人机交互界面

5 虚拟场景漫游

本文漫游的具体实现过程是将主摄像机附着在虚拟人上,可以通过第一视角来达到漫游的目的,通过鼠标左键来改变视角,鼠标的滚轮来控制视角的远近。虚拟人主要是通过插件导入到场景中去,我们对虚拟人进行动作的设计,主要有走、跑、跳和空闲等几个基本的动作,要达到漫游的目的这几个动作完全能够实现。具体漫游如图4和图5所示。虚拟漫游代码如下:

void Update () {

//定义物体的坐标

transform.position=mFollowTrans.position;

//按下左键

if(Input.GetMouseButton(1)) {

//x轴上旋转

transform.Rotate(Vector3.up*Input.GetAxis("Mouse X")*mRotSpeed,Space.World);

transform.Rotate(Vector3.left*Input.GetAxis("Mouse Y")*mRotSpeed);//y轴上面旋转 }

float f=Input.GetAxis("Mouse ScrollWheel");

mCamera.localPosition=new Vector3(0,mHight,-mDistance);

mCamera.localRotation=Quaternion.identity;//前后距离的调整

mDistance-=f;

}

图4 客厅场景

图5 卧室场景

这样就能够在虚拟场景中自由切换视角的左右和前后,虚拟人在虚拟场景中能够自由控制观察物体的角度,更加具有真实感和沉浸感。

6 结 语

本文简要描述了Unity 3D在室内漫游和人机交互设计中的强大功能,讨论了如何将建立完成的模型导入到Unity 3D建好的场景中来。Unity 3D能够完成更多的场景设计,例如主摄像机、灯光、天空盒等场景中必备的物体。实现了通过人机交互界面来控制虚拟场景中和现实生活中智能家居系统的各种设备,也能实时监控传感器的值,真正实现了虚拟与现实的结合。

随着客户要求的不断提升,使得我们整个智能家居系统必须做得更加完善。因此我们的智能家居虚拟场景也应该做得更加有真实感和实时相结合,各方面的功能更加完善,交互界面更加友好。相信虚拟场景将会成为展示智能家居系统的主要手段之一。

参 考 文 献

[1]梅寒,田力威,邵一川. 基于Unity 3D的智能家居综合管理平台的研究与实现[J]. 沈阳大学学报,2013(8):303-306.

[2]曲宝,赵娅,赵琦,等.基于Virtools的虚拟家居漫游系统的设计与实现[J].计算机工程与科学,2009(12):130-133.

[3]干建松. 基于Unity 3D的室内漫游的关键技术研究[J]. 盐城工学院学报, 2011(12):56-59.

[4]干建松. 基于Unity 3D的室内漫游仿真系统[J].淮阴师范学院学报,2011(12):515-518.

[5]肖灵君,刘紫薇.基于3dsMax和Virtools的虚拟校园的开发和设计[J].科技信息,2009(12):199-200.

[6]张荣华.几何建模技术在虚拟校园漫游系统开发中的应用[J].计算机工程与设计,2008,29(23).

[7]黄杨,王洋,张姝娟,等. 基于Unity 3D 的数字站区管理应用系统虚拟现实场景制作研究[J]. 测绘与空间地理信息,2013(4):50-56.

Design and implementation of virtual scene for smart home

CHEN Bo, FU Wei, XUE Zhen, HONG Yang

(Chongqing University of Posts and Telecommunications, Chongqing 400065, China)

Abstract: For smart home applications, and base on Unity 3D virtual platform, a model design of virtual sense household appliances and environmental monitoring equipment is proposed, which is realized by virtual intelligent family scenes. Virtual people can roam in the virtual environment freely, and control appliances and receive environment monitoring data real time through the terminal device in hands, which made the home control more vivid and achieve the integration of virtual and reality. The design of virtual scene is conducive to the improvement of the publicity, training and display of smart home, which allows users to experience the real smart home system remotely and shows the laboratory research products of smart home in zero distance.

Keywords: smart home; Unity 3D; virtual reality; virtual people

[2]曲宝,赵娅,赵琦,等.基于Virtools的虚拟家居漫游系统的设计与实现[J].计算机工程与科学,2009(12):130-133.

[3]干建松. 基于Unity 3D的室内漫游的关键技术研究[J]. 盐城工学院学报, 2011(12):56-59.

[4]干建松. 基于Unity 3D的室内漫游仿真系统[J].淮阴师范学院学报,2011(12):515-518.

[5]肖灵君,刘紫薇.基于3dsMax和Virtools的虚拟校园的开发和设计[J].科技信息,2009(12):199-200.

[6]张荣华.几何建模技术在虚拟校园漫游系统开发中的应用[J].计算机工程与设计,2008,29(23).

[7]黄杨,王洋,张姝娟,等. 基于Unity 3D 的数字站区管理应用系统虚拟现实场景制作研究[J]. 测绘与空间地理信息,2013(4):50-56.

Design and implementation of virtual scene for smart home

CHEN Bo, FU Wei, XUE Zhen, HONG Yang

(Chongqing University of Posts and Telecommunications, Chongqing 400065, China)

Abstract: For smart home applications, and base on Unity 3D virtual platform, a model design of virtual sense household appliances and environmental monitoring equipment is proposed, which is realized by virtual intelligent family scenes. Virtual people can roam in the virtual environment freely, and control appliances and receive environment monitoring data real time through the terminal device in hands, which made the home control more vivid and achieve the integration of virtual and reality. The design of virtual scene is conducive to the improvement of the publicity, training and display of smart home, which allows users to experience the real smart home system remotely and shows the laboratory research products of smart home in zero distance.

Keywords: smart home; Unity 3D; virtual reality; virtual people

[2]曲宝,赵娅,赵琦,等.基于Virtools的虚拟家居漫游系统的设计与实现[J].计算机工程与科学,2009(12):130-133.

[3]干建松. 基于Unity 3D的室内漫游的关键技术研究[J]. 盐城工学院学报, 2011(12):56-59.

[4]干建松. 基于Unity 3D的室内漫游仿真系统[J].淮阴师范学院学报,2011(12):515-518.

[5]肖灵君,刘紫薇.基于3dsMax和Virtools的虚拟校园的开发和设计[J].科技信息,2009(12):199-200.

[6]张荣华.几何建模技术在虚拟校园漫游系统开发中的应用[J].计算机工程与设计,2008,29(23).

[7]黄杨,王洋,张姝娟,等. 基于Unity 3D 的数字站区管理应用系统虚拟现实场景制作研究[J]. 测绘与空间地理信息,2013(4):50-56.

Design and implementation of virtual scene for smart home

CHEN Bo, FU Wei, XUE Zhen, HONG Yang

(Chongqing University of Posts and Telecommunications, Chongqing 400065, China)

Abstract: For smart home applications, and base on Unity 3D virtual platform, a model design of virtual sense household appliances and environmental monitoring equipment is proposed, which is realized by virtual intelligent family scenes. Virtual people can roam in the virtual environment freely, and control appliances and receive environment monitoring data real time through the terminal device in hands, which made the home control more vivid and achieve the integration of virtual and reality. The design of virtual scene is conducive to the improvement of the publicity, training and display of smart home, which allows users to experience the real smart home system remotely and shows the laboratory research products of smart home in zero distance.

Keywords: smart home; Unity 3D; virtual reality; virtual people

猜你喜欢

漫游智能家居虚拟现实
基于Zigbee的无线通信技术在智能家居中的应用
REALITY BITES
NASA漫游记
虚拟现实技术向科幻小说借灵感
关于智能家居真正需求的探讨
基于LD3320的智能家居控制
浅谈虚拟现实
边走边看:漫游海底 梦想成真