基于Neuron C的灯光控制程序设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Neuron C的灯光控制程序设计.doc

基于Neuron C的灯光控制程序设计   摘 要:本文从实用的角度,以灯光控制为切入点,简要介绍了Neuron C编程语言的应用,探讨了LonWorks在智能楼宇中的应用,旨在给读者在照明设计、Neuron C编程等方面研究提供一些参考。   关键词:Neuron C;网络变量;灯光控制   1、LonWorks与Neuron C概述   LonWorks控制网络是当前最为流行、通信能力较强的一种现场总线,它由美国Echelon公司推出并与Motorola、Toshiba公司共同倡导而形成。该技术包括Echelon公司设计的神经元芯片(内嵌装有LonTalk协议的固件)及相应的收发器、路由器、网络管理工具及开发系统等。①   应用层的软件可在NodeBuilder或LonBuilder开发系统下,采用一种专门的Neuron C编程语言,针对具体控制对象的要求编写应用层的程序代码,然后经过编译再与通信协议代码连接并生成完整的目标代码,一起下载到智能节点的存储器中。②Neuron C以ANSI C为基础,专门为神经元芯片而设计,针对LonWorks环境增加了特定的对象集合及访问这些对象的内部资源,它是开发LonWorks应用程序的强有力工具。   2、我国照明发展现状   随着我国城市化水平的不断提高,能源短缺及环境问题日益突出,节能减排成为了社会的焦点。据统计,我国能源供求紧张主要表现在电力上,而我国电能总消耗量的1/6用于照明。智能化照明控制系统,能够提高系统的管理效率,实现绿色照明、节能照明。③   人们离开办公室或房屋时,时常会由于各种原因忘记关灯,长此以往,会浪费大量的能源。要知道,在我国西部的贫困地区,有些孩子由于家里开不起电灯,只能点着油灯写作业。而我国的发电厂以火电为主,燃煤造成的环境污染已经侵蚀了不少地区的蓝天。总之,人走关灯的习惯养成迫在眉睫。   LonWorks技术可以监测家里或者办公室电灯的开关状态,如忘记关闭了,可以及时提醒,并通过手机APP或电脑上的远程监测平台实施远程控制,关闭电灯,节约能源。下面,以生活中常用的几种灯光开关的智能控制方式为例,体现LonWorks技术在灯光控制中的应用,通过Neuron C编程语言实行控制。   3、灯光的简单智能控制   3.1 一个开关控制一盏本地的灯   (1)控制要求   如图1-1所示,开关Button与灯LED相连,二者均处于离线状态,通过给定Button值,控制灯LED的亮灭。   图1-1   图1-2   (2)控制原理   如图1-2所示,开关Button通过与之相连的Neuron芯片IO_4接口输出ioButton值,通过与灯LED相连的Neuron芯片IO_0接口输入,给灯LED提供控制信号。   (3)控制程序   #pragma enable_io_pullups   #define LED_ON 1   #define LED_OFF 0   #define BUTTON_DOWN 1   #define BUTTON_UP 0   IO_0 output bit ioLED=LED_OFF;   IO_4 input bit ioButton=BUTTON_UP;   when(io_changes(ioButton) to BUTTON_DOWN)   { io_out(ioLED,( ioButton !=BUTTON_UP)?LED_ON:LED_OFF); }   3.2 一个开关控制一盏总线上的灯   (1)控制要求   如图2-1所示,开关Button与灯LED通过LonWorks总线相连,由开关Button提供控制值,通过LonWorks总线传递给灯LED,远程控制灯LED的亮灭。   图2-1   图2-2   (2)控制原理   如图2-2所示,开关Button通过与之相连的Neuron芯片IO_4接口向LonWorks总线输出开关网络变量nv_switch,转化为灯网络变量nv_lamp,通过与灯LED相连的Neuron芯片IO_0接口输入,给灯LED提供控制信号。   (3)控制程序   开关节点   #pragma enable_io_pullups   #include   network output SNVT_lev_disc nv_switch=ST_OFF;   #define BUTTON_DOWN 1   #define BUTTON_UP 0   IO_4 input bit ioButton=BUTTON_UP;   when(io_changes(ioButton) to BUTTON_DOWN

文档评论(0)

ganpeid + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档