基于Arduino与Android的远程控制系统

基于Arduino与Android的远程控制系统
基于Arduino与Android的远程控制系统

目录

项目简介 (1)

1.课题背景 (1)

2.国内相关领域现状和发展前景 (2)

3.相关领域发展的不足 (2)

研究设计 (3)

云计算 (3)

概述 (3)

无线传感器网络 (5)

系统组成 (6)

硬件部分 (7)

温度采集模块 (7)

液晶显示模块 (8)

土壤湿度采集模块 (10)

烟雾检测及报警模块 (11)

人体红外识别与检测模块 (12)

红外遥控发送与接收模块 (14)

报警电路模块 (15)

传感器网络 (16)

XBEE无线传输模块 (16)

IIC数据传输模块 (19)

Android部分 (21)

Android简介 (21)

Android功能简述 (22)

核心功能 (24)

TTS语音模块 (29)

软件部分 (30)

网站部分 (32)

网站后台 (32)

网站前台 (33)

用户界面 (34)

IP摄像头 (35)

项目简介

1.课题背景

在现代通信技术的飞速发展下,越来越多的人都用网络化和智能化代替了传统的生活环境,让生活更加舒适,便捷而高效智能家居的实现不仅会给普通居民用户带来家庭生活方式上的变革,而且将波及工业控制等许多与互联网相关的嵌入式应用领域,由于有线通信接线过,多方式复杂,线路存在的隐患较多,而且综合度和智能度不高,因而无线通信是近年来各通信行业所研究的重点,无线Xbee模块在通信、电子、家庭无线网和个人信息网等方面都有着较多的应用,随着无线技术的进一步发展,产品规模的不断扩大,技术的日益成熟和价格的下降,Xbee技术逐渐应用到工业领域和家庭中,由于无线Xbee通信媒介特殊性和优势,它可以很好地灵活地应用于智能家居信息网络。

2.国内相关领域现状和发展前景

20世纪90年代后期,我国的智能小区日益兴起。众所周知,我国的智能化住宅建设最早起于上海、广州和深圳等沿海城市,并逐渐向内陆发展。随着信息化走进了千家万户,由国家经贸委牵头成立了家庭信息网络技术委员会,而信息网络技术体系研究及产品开发已经被列为了国家技术创新的重点专项计划。据建设部要求,截止今年,我国将有70%以上的家庭拥有Internet入网设备,大中城市中50%的住宅要实现智能化。

我国的智能家居相对于国外起步较晚,尚未形成一定的国家标准。目前,主要采用国外的一些技术产品,但也有一些企推出了自己的产品,主要有:

e家庭(海尔)、e-home数字家园(清华同方),国内各大软、硬件机构正在积极的研制、开发更为符合市场的智能化家居设备,以解决当前智能化产品实用性差、使用复杂及产品价格昂贵等缺点,而技术创新性也逐步向国际先进水平靠拢,这样的未来值得期待。

3.相关领域发展的不足

首先,大多是应用于一些经济繁荣的大城市和一些经济差不多城市的酒店等。其次,技术复杂,使用范围的局限,因而进一步局限了产品的发展。再加上,有的系统成本过高,严重影响了产品的普及。而我们产品是可以裁减的,根据用户的需求量家定做,技术简单,成本也比较低,更适合于大众的使用。

研究设计

云计算

概述

传统的智能家居使用的是本地主机模式,也就是用户在访问的时候是访问位于在家中的主机。用户需要为这些不必要的本地主机支付这些费用,同时当用户需要新的功能时,厂家又无法及时地提供这些功能和更新,而基于云计算的智能家居则可以给用户带来极大的便利:

●用户可以减少硬件费用支出

●不再需要客户端,只需要一个浏览器

●可以快速获得更新、升级

●系统更加安全

●用户仅需要为自己所需要的功能付费

而对于厂商而言:

●减少系统的复杂度

●更加简单的系统配置

●方便集中管理用户资源

●快速地给用户进行服务更新

●能迅速解决用户问题

●降低运营成本

软件即服务(Saas)是随着互联网技术的发展和应用软件的成熟,而在21世纪开始兴起的一种完全创新的软件应用模式。它是一种通过Internet提供软件的模式,厂商将应用软件统一部署在自己的服务器上,客户可以根据自己实际需求,通过互联网向厂商定购所需的应用软件服务,按定购的服务多少和时间长短向厂商支付费用,并通过互联网获得厂商提供的服务。用户不用再购买软件,而改用向提供商租用基于Web的软件,来管理企业经营活动,且无需对软件进行维护,服务提供商会全权管理和维护软件。有些软件厂商在向客户提供互联网应用的同时,也提供软件的离线操作和本地数据存储,让用户随时随地都可以使用其定购的软件和服务。

系统框架如图所示:

实现家居设备控制不需要高速率的网络,低速率的网络便可实现系统的设计,同时由于有线网络相对无线网络,有着IP固定等问题,而这类问题往往是造成网络安全隐患的主要原因之一。传统的智能家居系统在系统设计上采用的是有线网络结构,这样虽然给用户带来了极大的便利,而在安全上却造成一定的问题。同一住宅小区内往往是采用固定IP的网络方式部署的网络,也就是在同一小区内,很容易可以推出全小区内的IP地址,而这也就意味着用户的系统容易被控制,使得系统更加不安全。

而使用2G/3G网络不仅可以满足用户对于控制系统的需求,传输数据时采用的是低速率网络,同时由于系统在安全性上也有了更好的保障。

无线传感器网络

采用无线传感器网络的智能家居基本框架如下图所示:

传统的有线智能家居系统在本地网络的设计上存在以下缺陷

●系统扩展性差

●需要使用数据繁多的线缆

●系统结构布线复杂

而采用无线传感器网络的系统则可以实现以下功能

1.快速部署系统::在部署系统的时候,不在需要破坏现有住宅的布线,而相对于传统的系统无论在生产还是生活中都有更多的优势。

2.系统扩展性好:系统不做改动的情况下,就能够实现功能扩张。

3.自组织能力强:用户对于系统进行配置和管理显得不是很现实,因而系统可以在现有的资源下自组织和协同工作显得十分重要

4.跨平台:智能家居系统中,因为存在不同的设备,而系统的基础结构都是不同的,我们只需要对系统的通信进行规范便可解决这类问题。

无线传感器网络是一种由独立分布的节点以及网关构成的传感器网络。安放在不同地点的传感器节点不断采集着外界的物理信息,如温度、声音、震动等。相互独立的节点之间通过无线网络进行通信。无线传感器网络的每个节点都能够实现采集,数据的简单处理,还能接收来自其他节点的数据,并最终将数据发送到服务器。服务器获取数据,查看历史数据记录或进行分析。通常,一个典型的无线传感器网络节点的硬件结构包括:传感器接口、ADC、微处理器、电源以及无线收发装置。

在选择无线传感器网络的设备组成时,对照了Zigbee及蓝牙、WIFI等后,发现WIFI有以下缺点功耗大、成本高、协议开销大、需要接入点等,不适合嵌入式系统的基本要求。而蓝牙虽可以组成微微网,然而其只能连接8个器件,通信距离也短。而相比之下,我们可以发现Zigbee网络距离以下特点:

1.低功耗

2.低成本

3.低速率

4.近距离

5.短时延

6.高容易

7.高安全

能满足嵌入式系统对于智能家居的基础需求,因而系统采用的是xBee模块+avr单片机构成的无线传感器网络,xBee是基于Zigbee通信协议开发,一种近距离、低复杂度、低功耗、低数据速率、低成本的双向无线通信技术,主要适合于自动控制、传感、监控和远程控制等领域,可以嵌入各种设备中,同时支持地理定位功能。

系统组成

本设计可分为11个部分:温度采集模块、液晶显示模块、土壤湿度采集模块、烟雾检测模块、人体红外识别与检测模块、红外遥控发送与接收模块、报警电路模块、XBEE无线传输模块、IIC数据传送模块、Android手机控制模块、远程及用户管理模块。

硬件部分

为了方便对整个系统的实现和运作进行控制及管理,我们借用了模块化来简化整个系统,即将整个复杂而庞大的系统分模块来实现,分模块来管理,分模块来控制。然后只需对各个模块进行配置,每个模块能独立运行后,再整体调试,整个系统就能良好运作。

整个系统中,温度采集模块负责获取房间的温度数据,液晶显示模块负责显示温度数据,土壤湿度采集模块负责检测植物生长的土壤湿度,烟雾检测模块负责获取房间的烟雾浓度,人体红外识别与检测模块负责检测家中是否出现盗贼,报警电路模块负责向用户反馈危险信息。

温度采集模块

温度采集模块的功能主要实现室内(或室外)环境温度的获取,并监控室内温度是否正常,然后上传即时数据给单片机。考虑到实用性与经济性,我们选择了与单片机相配的温度传感器LM35D(见图1)来监测环境温度,LM35D是一个比较实用的民用级温度传感器,它具有较高的工作精度和较宽的线性工作范围,该器件输出电压与摄氏温度成线性比例。

图1 LM35D外观及封装图

其主要参数为:

输出电压: 1V 至6V

◆输出阻抗: 电流1mA时负载0.1 ?

◆输出电流:10mA左右

◆工作温度范围:0℃至+100℃

引脚介绍: 1 电源正极VCC;2 数据输出V0;3 电源地GND 。

本电路中使用了单电源模式,电路中只需把LM35D的正负极(1,3引脚)接在单片机的VCC、GND引脚上,输出引脚(2引脚)接在单片机的A0引脚即可,无需外接电阻,连接电路比较方便。

以下为测量环境温度的部分应用程序:

#define tempPin 0

float temp;

void setup(){

Serial.begin(9600);}

void loop(){

temp = analogRead(tempPin);

temp =(4.6*temp*100.0)/1024;

Serial.print(temp);

}

液晶显示模块

液晶显示模块的主要功能是接受并显示当前室内或室外的温度数据,让房间的主人对当前温度有具体的了解,以便采取相应的操作。我们选择了LCD1602

来显示温度数据,LCD1602能显示字符,数字,但不能显示汉字,它是一块使用

十分普及的液晶显示工具,具有显示质量高数字式接口体积小、重量轻、功耗低等特点。下图是LCD1602的外观图。

图2 LCD1602引脚图

LCD1602为8路双向数据线,能进行背光和对比度调节。

主要技术参数为:

◆显示容量:16×2个字符

◆工作电压:4.5—5.5V

◆工作电流:2.0mA(5.0V)

◆模块最佳工作电压:5.0V

◆字符尺寸:2.95×4.35(W×H)mm

本设计所用的部分应用程序为:

#include

#define tempPin 0

LiquidCrystal lcd(12,11,5,4,3,2);

float temp;

byte hello[2];

void setup(){

lcd.begin(16,2);

Serial.begin(9600);}

void loop(){

temp = analogRead(tempPin);

temp =(4.6*temp*100.0)/1024;

hello[0]=(int)(temp*100)/100;

hello[1]=(int)(temp*100)%100;

lcd.setCursor(0,0);

lcd.print("Temp:");

lcd.print(temp);

lcd.setCursor(0,1);

lcd.print(millis()/1000);

delay(1000);}

在本电路中,只需连接LCD的VCC,GND引脚置单片机的VCC,GND引脚,连接RS,RW,E引脚到单片机的D2,GDN,D1引脚,最后再连接LCD的D1,D2,D3,D4引脚至单片机引脚标号为5,4,3,2的引脚即可,再附加一段程序即可实现温度数据的测量与显示。

土壤湿度采集模块

土壤湿度采集模块是为了检测植物的缺水状况并记录实时模拟数据然后上传给控制器,让控制器(单片机)决定是否给植物浇水。土壤湿度传感器Moisture Sensor就实现了这一功能。

Moisture Sensor是一个简易分水传感器,利用电阻变化测量分水适度,土壤越干燥,输出电压越小;反之,越大。其工作电压为3.3V-5V,输出电压

0V-3.6V(5V供电) ,使用时,只需将Moisture Sensor传感器探头插入土壤中,通过AD转换电压信号,即可检测土壤水分。其电路原理图如下:

图3 土壤湿度传感器原理图

当传感器检测到土壤湿度过低时,把数据上传给单片机,单片机分析数据后会驱动迷你小水泵给植物浇水,当湿度大于一定数值时,停止浇水。其构成一个简单的自动浇花系统,而不需人工的参与。

烟雾检测及报警模块

烟雾检测模块具有防止火灾发生的功能。为了降低房主离家在外家中发生火灾的机率,我们选用了烟雾传感器MQ2来实时检测家里的烟雾浓度。正常情况下家中烟雾浓度为一范围内的稳定值。当房间内浓度高于某一上限值时。表示家中可能发生火灾,这时会单片机通过控制蜂鸣器发出警报并给用户打电话。

MQ2烟雾传感器用于家庭和工厂的气体泄漏监测装置,适宜于液化气、丁烷、丙烷、甲烷、酒精、氢气、烟雾等的探测,我们用来检测家里的烟雾。其电路图如下:

图4 MQ2烟雾传感器引脚及外观图

MQ2有四个引脚,电源正极引脚VCC,接地引脚GND,模拟输出引脚AOUT,数字输出引脚DOUT,使用时VCC接5V电源,GND接地,AOUT和DOUT分别接单片机的数字引脚D3、D4,连线后,即能使MQ2开始工作,其输出为0-5V直流电压,烟雾浓度越大,输出电压越大。

人体红外识别与检测模块

人体红外识别与检测模块的主要功能是监测家里是否出现盗贼(当用户离家在外时)。我们所使用的人体红外热释电传感器能够感应到人体所发出的红外光。由于人体都有恒定的体温,一般在37度,所以会发出特定波长10UM左右的红外线,被动式红外探头就是靠探测人体发射的10UM左右的红外线而进行工作的。人体发射的10UM左右的红外线通过菲泥尔滤光片增强后聚集到红外感应源上。红外感应源通常采用热释电元件,这种元件在接收到人体红外辐射温度发生变化时就会失去电荷平衡,向外释放电荷,后续电路经检测处理后就能产生报警信号。

其原理图如下:

图5 红外人体热释电传感器

人体红外热释电传感器有三个引脚VCC,GND和DOUT,使用时VCC,GND引脚分别接单片机的VCC,GND引脚,DOUT引脚接单片机的数字引脚D6即可使其工作,部分应用程序如下:

int val,Led=6,Sensor=7;

void setup(){

pinMode(Led,OUTPUT);

pinMode(Sensor,INPUT);}

void loop(){

val=digitalRead(Sensor);

if(val==LOW){

digitalWrite(Led,LOW);}

else{

digitalWrite(Led,HIGH);}}

红外遥控发送与接收模块

红外线遥控是目前使用最广泛的一种通信和遥控手段,红外线遥控因具有体积小、功耗低、功能强、成本低等特点而广受欢迎。红外线接收器,它是一种集红外线接收、放大、整形于一体的集成电路,不需要任何外接元件,就能完成从红外线接收到输出与TTL电平信号兼容的所有工作。下图为红外接收模块电路图:

图6 红外接收电路

当红外接收器接收到红外灯发出的信号时,通过向应的程序处理并由数码管输出得到的数据。

部分应用程序如下:

#include

int RECV_PIN =11;//????PUT????1

IRrecv irrecv(RECV_PIN);// ?IRrecv ??????ō

decode_results results;//??results

void setup(){

Serial.begin(9600);

irrecv.enableIRIn();}//???

void loop(){

if(irrecv.decode(&results)){//?????????

if(results.value !=(-1)){

Serial.print("irCode: ");

Serial.print(results.value,HEX);//????

irrecv.resume();}}}

报警电路模块

报警电路的主要功能是为了家里防止发生紧急情况而关闭用电器。当检测到家中烟雾浓度过大时,单片机控制蜂鸣器发出警报30S,如果家里有用户就会听到,如果用户没有听到,单片机控制手机给远端的用户打电话通知情况。程序会自动关闭所有家电并发送消息给在外的登录用户的手机或电脑用户,最大可能的避免损失。其通信过程如下:

图7 报警电路通信模型

传感器网络

为整个系统提供数据的底层硬件是由一系列传感器组成的传感器网络,它是最基础也是最有价值的一部分,用户获得这些传感器提供的数据后,才能对用电器进行操作。整个网络中使用到的传感器主要有:LM35温度传感器,MQ2烟雾传感器,土壤湿度传感器Moisture Sensor,人体红外热释电传感器。它们各自独立工作不断地为终端提供数据。

XBEE无线传输模块

XBEE无线传输模块是本设计中重要的一部分,主要实现多路数据的无线传输,脱离距离的限制,便于单片机的控制。由于考虑到多个房间都存在用电器,因此同样需要控制器去控制它们,实现多个控制器之间的数据发送和接收最好使用无线传输模块。我们选取了XBEE模块作为数据传输工具。

XBEE无线模块是基于Zigbee通信协议开发,是一种低功耗的无线组网通信模块,多个模块可以形成一个多条的自组织Zigbee网络(基于Zigbee协议

---802.15.4),这是它优势所在,在网络中的各个节点均可移动,网络的拓扑结构也会随着节点的移动而不断的动态变化。XBEE模块和XBEE PRO两个模块均工作在2.4GHz频段,且引脚相互兼容。其引脚图如下:

图8 XBEE无线通信模块引脚图

拥有UART接口的设备可以连接到模块的相应引脚,如图9:

图9 xbee通信模型

XBEE主要参数:

◆室内传输距离:约40米

◆发射功率:1mW

◆发送电流:45mA(3.3V时)

◆接受电流:50mA(3.3V时)

通信时,数据作为异步串行信号通过针脚3进入模块的UART.当没有数据传输时,信号置为高电平.每个数据字节包含一个起始位(低电平),八个数据位和一个停止位(高电平).下图模拟了串行信号通过模块时的情形.

图10 XBEE通信时序图

连通后任意两个xbee模块能进行数据的双向传输,在使用前需用串口调试软件X-CTU(见图11)对其进行配置,xbee有两种工作模式,AT指令和API模式。

图11 XBEE配置软件X-CTU图

部分应用程序如下:

#include

XBee xbee = XBee();

uint8_t playload[]={0,0};

XBEEAddress64 addr64 = XBEEAddress64(0x0013a200,0x408b47db);

ZBTxRequest zbTx = ZBTxRequest(addr64,playload,sizeof(playload));

int pin5 =0;

void setup(){

xbee.begin(9600);}

void loop(){

pin5 = analogWrite(5);

playload[0]= pin5 >>8&0x30;

playload[1]= pin5 &0xff;

xbee.send(zbTx);

delay(1000);}

IIC数据传输模块

IIC数据传输模块属于有线串口通信的一种。当两块控制器(MCU)各自需要进行通信且所需距离比较近时,IIC/TWI通信很好的满足了需求。我们用它来实现两块微控制器的通信。

IIC 即Inter-Integrated Circuit(集成电路总线),IIC串行总线有两根信号线,一根是双向的数据线SDA,另一根是时钟线SCL。所有接到I2C总线设备上的串行数据SDA都接到总线的SDA上,各设备的时钟线SCL接到总线的SCL 上,利用该总线可实现多主机系统所需的裁决和高低速设备同步等功能。因此,它是一种高性能的串行总线。

每个接到IIC总线上的器件都有唯一的地址,(一般情况下器件的地址都是7位)比如说我们要发送一个数据给某一个从设备,此时我们如何对其进行写入数据呢,这时主设备先通过SDA发送一个地址,然后所有的从设备就会判断自己的地址是不是主机发送的这个地址,如果是,这样主机就和此地址的从设备连接上了。

IIC通信过程:

图12 IIC通信过程

下图为我们使用的一种模型:

Android系统架构详解

Android系统架构详解 Android系统架构由5部分组成, 分别是:Linux Kernel、Android Runtime、Libraries、Application Framework、Applications。 1、Linux Kernel Android relies on Linux version 2.6 for core system services such as security, memory management, process management, network stack, and driver model. The kernel also acts as an abstraction layer between the hardware and the rest of the software stack. Android基于Linux 2.6提供核心系统服务,例如:安全、内存管理、进程管理、网络堆栈、驱动模型。Linux Kernel也作为硬件和软件之间的抽象层,它隐藏具体硬件细节而为上层提供统一的服务。如果你学过计算机网络知道OSI/RM,就会知道分层的好处就是使用下层提供的服务而为上层提供统一的服务,屏蔽本层及以下层的差异,当本层及以下层发生了变化不会影响到上层。也就是说各层各尽其职,各层提供固定的SAP(Service Access Point),专业点可以说是高内聚、低耦合。如果你只是做应用开发,就不需要深入了解Linux Kernel层。 2、Android Runtime Android includes a set of core libraries that provides most of the functionality available in the core libraries of the Java programming language. Android包括一个核心库的集合,她们提供了Java编程语言的核心库中的绝大多数功能。 Every Android application runs in its own process, with its own instance of the Dalvik virtual

低压电器远程智能控制系统设计与实现

低压电器远程智能控制系统设计与实现 发表时间:2018-03-13T14:56:43.310Z 来源:《防护工程》2017年第31期作者:王秀丽周永涛尹环环 [导读] 当前,信息化、智能化为低压电器产品升级提供了技术支撑。 山东省产品质量检验研究院山东济南 250000 摘要:当前,信息化、智能化为低压电器产品升级提供了技术支撑。以数字化、网络化、智能化为标志的智能化低压电器制造,被认为是两化深度融合的切入点和主攻方向。 关键词:低压电器;智能化控制;设计 1.前言 在电器行业的未来发展中,低压电器的智能化技术发展是其必经之路,故而必须在低压电器的智能化技术发展的基础上,进行深入的探讨分析,进一步指出低压电器的智能化技术的发展趋势是在于同智能电网系统的匹配与建造上。 2.低压电器智能化概述 一直到现在为止,国内外的低压电器标准上都没有对低压电器智能化进行过具体的定义。可是,低压电器智能化的说法早已被低压电器的研发人员、设计人员、使用部门、工程设计人员以及制造商接受了。智能化的低压电器一般具有以下四个功能上的基本特征:(1)齐全的保护功能;(2)能够测量现实的电流参数;(3)能够记录并显示故障;(4)能够自行诊断内部的故障。 由于建筑电器的不断发展以及智能电网的不断建设,住宅配电系统的供应商越来越看重具有智能化技术功能的低压电器。曾被展出的FTB1带选择性保护的小型断路器,就是智能化低压电器的较为典型的代表,它是完全自主的知识产权的产物,又隶属于第四代的低压电器,使得我国的低压终端配电系统在选择性保护上面不再存在空白,而且它的分断能力比较高,体积又特别小,同时又具备了选择性保护以及通信功能智能化的特色,故而能够使智能楼宇与智能终端的配电回路系统的需求达到满足。除此之外,还有被研制出的VW60这一新的智能化低压框架的断路器。VW60万能式的低压断路器这一产品不仅仅体积小、断路的性能更为强大,而且具备了新颖的操作机构和现场的总线技术水平十分高的特点。由于该产品被成功地开发出来,使得智能化的低压配电同电控的成套开关设备有更好的发展,促进了配网的智能化进程。 3.低压电器与中央控制服务器之间通信协议 系统中,各系列产品通过RS-485总线连接为小型局域网,在局域网中使用Modbus通信协议是确保数据交换正确无误的条件与保证。Modbus协议是应用于电子控制器上的一种通用语言。通过此协议,各系列产品与工控机及其他设备之间得以通信。服务器与采集控制器及各系列产品之间需要频繁地交换数据,因此本系统选择标准的Modbus网络通信的RTU(远程终端单元)模式通信。在RTU模式中,采用典型的消息,消息帧的地址域包含8bit。单个设备的地址范围是1~247。地址域对每一个设备来说是唯一的,以此来标识不同的设备,如第一个FAR6L3设备的地址域为10,第二个FAR6L3设备的地址域为11;第一个FAR6U3设备的地址域为20,第二个FAR6U3设备的地址域为21;以此类推。 消息帧中的功能代码域包含了8bit。保证每一代码的唯一性。当消息从主设备发往从设备时,功能代码域将告诉从设备需要执行哪些行为,例如读取设备的开关状态,读取从设备的状态等。当从设备回应时,使用功能代码域来指示是正常回应(无误),还是有某种错误发生(异议回应)。数据域是由两个十六进制数集合构成的,范围00~FF。对于不同的产品,数据域包含信息有所不同,比如MOT电操有电压值、欠费值、剩余电流值等工作参数,而FDQ5则不同,有常用电源A相、B相、C相电压值,备用电源也有A相、B相、C相电压值等参数。因此,为使数据域能够表示所有产品的功能参数,本系统定义的数据域集合较大,为11。 综上所述,在上述各系列产品组成的以太网中采用RS-485通信协议完成与局域网中设备之间的通信是一种适用的选择,试验证明这种通信协议在本系统中是安全、可靠的。 4.服务器数据管理与数据存储 因工控机具有高可靠性与多接口性,系统选用工控机作为服务器。工控机在本系统中具有两大作用,一为各系列产品的上位机;二为服务器。工控机端开发两套软件系统完成上述功能。 其中远程控制系统为基于B/S结构的软件系统,向本地或远程用户提供人机交互界面,用户可以通过移动终端、电脑终端、互联网终端等设备远程登录该系统。在该界面中,用户可以监控到各个低压电器的状态、实时参数等信息;同时用户可以通过界面更改其运行参数或运行状态,从而达到远程监测与遥控的目的。I/O(输入/输出)管理系统作为上位机软件管理各类数据,接收从低压电器发来的数据,并将其传递给人机交互界面,显示其运行状态等信息;同时将人机交互界面接收的远程命令通过RS-485接口发送至相应的低压电器。在服务器端软件开发中,数据管理是关键问题。在系统开发中,远程控制系统中的数据存取与I/O管理系统的数据存取均采用数据库(DB)实现。独立的数据管理机制保证了系统的可靠性和安全性。 5.试验系统的实现 以某公司的低压电器产品为从设备,以工控机(服务器)为主设备,采用了RS-485通信组建以太网,实现了远程智能控制系统。试验系统包含FAR6L3(三相自动重合闸保护器),FAR6U3(三相自复式过欠压保护器),FAR6W3(三相预付费电表断路器),FDQ5(双电源自动转换开关)及MT3(三相微型断路器电操)等上述5个系列产品系统。服务器端软件采用VisualC#2010开发环境,数据存储采用SQLServer数据库。在服务器中人机交互界面中,显示了上述5个系列产品的操作界面,其中产品FAR6W3具有两种操作模式。通过每个系列产品的操作按钮,即可进入该电器的操作界面,进入低压电器FAR6W3的操作界面,在界面中可以控制FAR6U3的A相、B相与C相电压。当电压过低时,FAR6W3便会分闸;当电压恢复时,FAR6W3便会合闸。经测试,远程智能控制系统可以监测上述5个系列产品的电压、电流信号及运行状态;远程修改其参数或运行方式。各系列产品与服务器之间信号传输实时,通过互联网远程控制上述5个系列产品的效果良好。 6.低压电器智能化存在的发展机遇 由于整个电力系统之中,低压电器被用作电网能量链之中的最底层使用范围是相当广阔的,它不仅仅对用户起着控制与保护的作用,

安卓系统简介及如何分区的

android操作系统的分区 对电脑系统了解的朋友都知道,简单来说,电脑分硬件和软件两大块,软件装在硬盘上,比如操作系统windows,使用者通过windows来控制机器硬件,达到使用电脑的目的。 手机也分为硬件和软件两块,软件则是装在闪存(即flash memory,一种存储器)上的,闪存有大小的区别,就像硬盘有大小一样,看手机硬件配置的时候,通常会看到如下介绍:ROM 512M,RAM 512M,ROM就是指的闪存了,相当于电脑上的硬盘,用来存放操作系统和用户数据等信息。相应的,RAM就是指的内存了。 手机出厂时都是装好系统的,这点类似于电脑世界里面的品牌电脑,通过分析手机闪存上的内容可以知道,android操作系统主要有以下几个重要的分区(包括但不限于): hboot分区----------负责启动。 radio分区----------负责驱动。 recovery分区-------负责恢复。 boot分区-----------系统内核。 system分区---------系统文件。 cache分区----------系统缓存。 userdata分区-------用户数据。 1、hboot(SPL):这里指的是手机上的启动模块,通俗的说,就是负责手机启动引导的一段程序,类似于电脑主板上的BIOS,都是负责底层操作的。和在电脑上刷新BIOS一样,刷错了,电脑就会开不了机,对手机来说也一样,这部分的内容刷错了,手机就会变砖!

2、radio:这里指的是手机上的通讯模块,又叫做基带。负责手机的无线信号,蓝牙,WIFI等设备的管理,也就是说,相当于电脑系统里面的硬件驱动部分。这样说或许也不是特别的准确,大家明白大概的意思就可以了。通常我们所说的刷radio,刷基带,就是指的刷写这一部分,以便解决通话质量、网络连接质量、蓝牙连接等等问题。 3、recovery:字面意思是恢复,手机上的一个功能分区,有点类似于笔记本电脑上的恢复分区。一般大厂出的笔记本,都会自带一个特殊分区,里面保存着系统的镜像文件,当系统出问题的时候,我们可以通过它来一键恢复系统。这里的recovery功能有些类似。其实,他更像是电脑上的小型winPE系统,可以允许我们通过启动到winPE系统上,去做一些备份、恢复的工作。当然,系统自带的recovery基本没用,所以我们通常会刷入一个第三方的recovery,以便实现更多的功能,例如:备份系统,恢复系统,刷新系统等。但官方自带的recovery 也不是一无是处,在使用OTA方式升级系统时候,会检查此分区内容,如果不是原厂自带的,OTA升级就会失败。 4、fastboot:字面意思是快速启动,在这里,其实是一个特殊的工程模式,通过fastboot界面,连接电脑后,我们可以在电脑端通过特殊的指令来操作手机,例如更新radio,就可以通过fastboot来完成。fastboot的级别又要比recovery 来的要高一些,可以完成更底层的一些操作。后面我们会结合实际,来讲解一些fastboot的用法,更详细的资料,大家可以通过网络来学习,这里不再赘述。 5、ADB:android debug bridge,字面意思就是安卓调试桥接,简单点说,它是android系统提供的一套工具,通过它,我们可以在电脑上建立一个连接到手机的通道,然后可以在电脑上向手机发送一些指令,完成一些我们需要做的工作。ADB的用法我们后面也会作相应的介绍。 6、ROM:read only memory,只读存储器。上面我们讲过的,android系统都是安装在闪存里面的,这个闪存,就是一种只读存储器,断电情况下里面的内容不会消失。刷机,就是刷的ROM。有点类似电脑里的硬盘,ROM里面有很多分区,hboot、boot、system等等,前文介绍过的,还记得吗?说到这里,想到一个好笑的事情,某人问老婆,知道什么是ROM吗?答曰:room?不就是房子吗?晕倒,我说的是R O M ,不是R O O M!!奥,那就是小房子了!狂晕!!

解析三种Windows操作系统远程控制的实现

解析三种Windows操作系统远程控制的实现 你遇到过这样的情况吗?遇到一位“菜鸟”MM向你请教一个计算机设置或软件安装等方面的问题时,因为距离远,你又不能赶到现场,用即时通讯软件甚至动用电话给她里讲 了半天,她仍是一头雾水,怎么办?她不会只有自己动手了,于是你使用软件远程连接到她的机器上,远程操作她的电脑,问题很快就解决了,顺便还看了一眼MM机器里面的内容。下面笔者就此过程中所需的相关知识为大家一一进行解答! 远程控制因为进一步克服了由于地域性差异而带来的不便性,所以在网络管理、远程技术支持、远程交流、远程办公等领域有着非常广泛的应用。如何实现这种技术呢?其实非常简单,我们可以利用系统本身自带的功能或者利用一些工具软件来实现,但在本文中笔者将就如何使用Windows系统本身自带的功能来实现远程控制进行讲解,下面就让我们大家一起来看下文中远程控制的原理分析以及应用技巧。 远程控制软件的原理 远程控制软件一般分两个部分:一部分是客户端程序Client,另一部分是服务器端程序Server(或Systry),在使用前需要将客户端程序安装到主控端电脑上,将服务器端程序安装到被控端电脑上。它的控制的过程一般是先在主控端电脑上执行客户端程序,像一个普通的客户一样向被控端电脑中的服务器端程序发出信号,建立一个特殊的远程服务,然后通过这个远程服务,使用各种远程控制功能发送远程控制命令,控制被控端电脑中的各种应用程序运行,我们称这种远程控制方式为基于远程服务的远程控制。通过远程控制软件,我们可以进行很多方面的远程控制,包括获取目标电脑屏幕图像、窗口及进程列表;记录并提取远端键盘事件(击键序列,即监视远端键盘输入的内容);可以打开、关闭目标电脑的任意目录并实现资源共享;提取拨号网络及普通程序的密码;激活、中止远端程序进程;管理远端电脑的文件和文件夹;关闭或者重新启动远端电脑中的操作系统;修改Windows注册表;通过远端电脑上、下载文件和捕获音频、视频信号等。 前面我们所说的是一台电脑对一台电脑的情况,其实,基于远程服务的远程控制最适合的模式是一对多,即利用远程控制软件,我们可以使用一台电脑控制多台电脑,这就使得我们不必为办公室的每一台电脑都安装一个调制解调器,而只需要利用办公室局域网的优势就可以轻松实现远程多点控制了。在进行一台电脑对多台远端电脑进行控制

Android系统架构简介

Android系统架构简介 Android系统架构简介 目前Android的Linuxkernel控制包括安全、存储器管理、进程管理、网络堆叠、驱动程序模型等。下载Android源码之前,先要 安装其构建工具Repo来初始化源码。Repo是Android用来辅助Git 工作的一个工具。 应用程序 Android系统是基于Linux内核开发,使用Java作编程语言, 使界面到功能,都有层出不穷的变化,其中Activity等同于J2ME 的MIDlet,一个Activity类别负责创建视窗,一个活动中的 Activity就是在foreground(前景)模式,背景执行的程序叫做Service。两者之间透过由ServiceConnection和AIDL连结,达到 复数程序同时执行的效果。如果执行中的Activity全部画面被其他Activity取代时,该Activity便被停止,甚至被系统清除。 View等同于J2ME的Displayable,程序人员可以透过View类别与“XMLlayout”档将UI放置在视窗上,并可以利用View打造出所 谓的Widgets,其实Widget只是View的一种,所以可以使用xml 来设计layout。至于ViewGroup是各种layout的基础抽象类别,ViewGroup之内还可以有ViewGroup。View的构造函数不需要在Activity中调用,但是Displayable的是必须的,在Activity中,要通过findViewById()来从XML中获取View,Android的View类 的显示很大程度上是从XML中读取的。View与事件息息相关,两者 之间透过Listener结合在一起,每一个View都可以注册eventlistener,例如:当View要处理用户触碰的事件时,就要向Android框架注册View.OnClickListener。另外还有Image等同于 J2ME的BitMap。 中介软件

一种远程控制系统的设计与实现

一种远程控制系统的设计与实现 刘旭东 (长安大学信息工程学院陕西西安710064) 摘要:目前,随着计算机网络的广泛应用,无纸办公和远程办公是人们经常谈及的话题,为了实现计算机网络的这 种应用,方便人们工作,本文提出了一种远程控制系统。为了实现这个系统,首先从系统所要实现的功能着手,设计出该 系统的体系结构,并详细说明体系结构中各模块的主要功能;接着从通信效率和网络环境方面考虑,设计出适合于该系统 的通信协议;最后以流程图的方式详细说明系统软件的实现过程。 关键词:远程控制;软件;系统结构;通信协议 中图分类号: TP393.09 文献标识码: B 文章编号: 1004 373X (2005) 02 053 03 1 引言 随着计算机网络的飞速发展,人们可以很方便地从Internet上获取和自己工作生活密切相关的信息,世界也真正变成一个地球村,我们可以和世界上其他任何一个人通过计算机网络进行沟通,信息资源达到了高度的共享。从这一点得到启发,希望能够设计一个远程控制系统,通过他可以在家里控制办公室里的计算机。如果你是软件开发商,你的员工可以通过他在办公室里远程为客户配置系统、对产品进行维护,如果客户向你报告软件产品出现问题你可以远程对产品进行调试,最终解决问题。这样员工就不会因长期的劳苦奔波而抱怨,用户也不会因为你不能及时解决产品的问题而和你讨价还价,当然也为公司节约了人力和财力。下面详述该远程控制系统是如何实现的。 2 远程控制系统的体系结构设计 该远程控制系统由服务器端和客户端2个部分组成,客户端可以通过鼠标和键盘控制服务器端的计算机,同时还可以相互传输文件。其体系结构如图1所示,主要由安全性校验、屏幕控制、鼠标控制、键盘控制、命令控制、文件传输、端口设置等6个模块组成。下面具体说明各个模块的功能。 (1)安全性校验模块 从系统安全性方面考虑,目的是让客户端和服务器端建立可信联接,客户端要想完全控制服务器端的计算机,必须先通过服务器的验证取得服务器的信任。这样可以避免一些不怀好意的人通过客户端窃取服务器端计算机中有用的资料。

Android系统原理及开发要点详解.

内容简介 本书全面介绍开放的移动电话平台Android系统,包括Android系统中的Linux 驱动、本地框架、Java框架和Java应用4个层次。本书内容以知识性内容为纲,重点关注开发要点,各个部分内容注重相互照应,按照清晰的思路向读者介绍整个Android系统的原理和开发方法。 本书按照Android系统的框架和各个子系统的主线,重点介绍开发Android应用程序和构建硬件抽象层。其内容涵盖了Android应用程序开发和Android系统移植构建手机系统两大方面。 本书既适合从事Android各个层次开发的工程师阅读,也适合通用嵌入式Linux 系统的学习者使用。 本书购买地址:当当网卓越网中国互动出版网 作者简介 梁泉是移动系统开发资深工程师,在Android领域具有完备的知识和前沿的技术,长期从事一线开发工作。 韩超是中国大陆地区较早参与Android系统开发的人员之一,也是中国大陆的Androidin(机锋网开发社区的核心成员和重要组织者之一;也曾经引领大陆各种相关技术人员进入Android领域,并组织参与国内外的相关枝术交流。 前言 Android 是Google历经数年和投资数亿美元开发出来的智能手机系统,Google 也发起了围绕Android的组织——开放手机联盟,其英文全称为“Open Handset Alliance”。

随着各大移动终端生产商大力开发和生产基于Android的移动智能设 备,Android迅速得到业界和社会的认可,并成为整个产业的热点,基于Android平台的各类人才逐渐成为各大企业竞相争夺的焦点。 Android系统是一个开放的系统,任何公司、个人开发者、爱好者都可以参与其中。对于技术工作者,Android不仅是一个智能手机的系统,也可以作为学习嵌入式Linux系统的较完整的软件平台。 Android是一个较新的系统和技术,因此介绍Android的资料和书籍还比较少,尤其简体中文的书籍,相对更少。本书《Android系统原理及开发要点详解》是一本综合介绍Android系统的书,集合了Androidin社区多位专家作者的经验,精心编写而成。 Android 作为一个庞大的系统,包括了Linux操作系统、各种本地程序、虚拟机和运行环境、Java框架和Java应用程序多方面的内容。这对于初学者是一个非常大的挑战,因此对于学习、研究进而开发Android系统来说,掌握系统的脉络和使用恰当的学习方法是非常重要的,这也是本书的组织主旨。 本书特点为了适应Android系统的情况,本书在内容的编排和组织上具有以下一些重要特点。 保持完整性和层次性本书紧紧把握Android系统的4个层次,分章节介绍,并且有重点地介绍了Android整个系统的代码结构、编译系统、相关工具、各部分组织等全局性内容。这将让读者即使只花费较短的时间,也可以获得对Android 系统大致的感性理解。 提供清晰的框架Android是一个有数百兆大小的较大系统,各部分之间是有机联系的,这就要求Android的学习和开发者需要具有一些软件架构方面的知识。本书为Android整体和重点模块绘制了大量的框图,这样非常有利于帮助读者直观地理解系统。本书在讲述每一个部分时,均列出相关代码的路径,帮助读者对应着进行快速、高效地学习。

linux内核启动 Android系统启动过程详解

linux内核启动+Android系统启动过程详解 第一部分:汇编部分 Linux启动之 linux-rk3288-tchip/kernel/arch/arm/boot/compressed/ head.S分析这段代码是linux boot后执行的第一个程序,完成的主要工作是解压内核,然后跳转到相关执行地址。这部分代码在做驱动开发时不需要改动,但分析其执行流程对是理解android的第一步 开头有一段宏定义这是gnu arm汇编的宏定义。关于GUN 的汇编和其他编译器,在指令语法上有很大差别,具体可查询相关GUN汇编语法了解 另外此段代码必须不能包括重定位部分。因为这时一开始必须要立即运行的。所谓重定位,比如当编译时某个文件用到外部符号是用动态链接库的方式,那么该文件生成的目标文件将包含重定位信息,在加载时需要重定位该符号,否则执行时将因找不到地址而出错 #ifdef DEBUG//开始是调试用,主要是一些打印输出函数,不用关心 #if defined(CONFIG_DEBUG_ICEDCC)

……具体代码略 #endif 宏定义结束之后定义了一个段, .section ".start", #alloc, #execinstr 这个段的段名是 .start,#alloc表示Section contains allocated data, #execinstr表示Section contains executable instructions. 生成最终映像时,这段代码会放在最开头 .align start: .type start,#function /*.type指定start这个符号是函数类型*/ .rept 8 mov r0, r0 //将此命令重复8次,相当于nop,这里是为中断向量保存空间 .endr b 1f .word 0x016f2818 @ Magic numbers to help the loader

远程控制系统的设计与实现

收稿日期:2003-04-28 作者简介:吴志攀(1975-),男,广东五华人,惠州学院电子系教师,中南大学信息科学与工程学院在读研究生. 第24卷第3期 2004年6月惠州学院学报(自然科学版)Journal of Huizhou University (Nat.Sci.)Vol 1241No 13J un 12004 远程控制系统的设计与实现 吴志攀,赵跃龙,杜华英(中南大学信息科学与工程学院,湖南 长沙  410083) 摘 要 本文用VB 对远程控制系统进行了设计与实现,并对其中每个部分的功能进行了较为详细的说明 关键词 远程控制;Winsock ;VB. 中图分类号:TP393.5 文献标识码:A 文章编号:1671-5934(2004)03-0038-06 1 引言 远程控制系统用处很大,实用性很强,应用范围很广。可以应用在教学方面:教师机控制着学生机,实现远程广播、远程控制、文件共享传送等功能;也可以应用在网吧的计算机管理,对计算机进行监控,用于上机收费等。 2 简易远程控制系统实现思想 2.1本系统所具有的基本功能: ①实现主机远程控制客户机重新注销、重新启动、强行关机。 ②实现主机远程撤消客户机的桌面背景等,锁定客户机的键盘、鼠标。 ③实现主机与客户机的互发短信、文字聊天。 ④实现主机与客户机的文件传输。 ⑤实现主机信息广播到各个客户机,远程监视客户机,远程控制客户机。 2.2本系统的实现思想 本系统使用Winsock 进行网络通信。客户/服务器模式兴起于90年代,到了90年代的中期开始成为流行的使用模式,它的出现从总体上讲有以下两个原因: 第一个原因,在客户/服务器模式出现以前,占主导地位的是60年代的集中式大型机模式和80年代的PC/文件服务器模式。它们有很多的缺点:大型机模式实现了高度的集中控制,但是操作不便;而PC/文件服务器模式虽然提供了较好的用户界面,但是却大大提高了体系的整体开销和维护成本。而客户/服务器模式在继承了PC 模式的友好用户界面的基础

android系统详细介绍

android Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linu x平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。目前最好的是Android2.0的摩托罗拉Droid 目录[显示] [编辑本段] 简介 Android是基于Linux内核的软件平台和操作系统,早期由Google开发,后由开放手机联盟(Open Handset Alliance)开发。它采用了软件堆层(software st ack,又名为软件叠层)的架构,主要分为三部分。底层以Linux内核工作为基础,只提供基本功能;其他的应用软件则由各公司自行开发,以Java作为编写程序的一部分。另外,为了推广此技术,Google和其它几十个手机公司建立了开放手机联盟。Android在未公开之前常被传闻为Google电话或gPhone。大多传闻认为Goog le开发的是自己的手机电话产品,而不是一套软件平台。到了2010年1月,Googl e开始发表自家品牌手机电话的NexusOne。目前最新版本为Android2.1。 对手机行业的影响 已经与HTC、NTT DoCoMo、KDDI、Motorola等世界移动领域34家公司于免费提供达成一致。今后对于移动通讯的影响势必会进一步体现出来。但是如此广泛公司的同盟是否能够有效运作以及持久,让我们拭目以待。 Android手机 2008年9月22日,美国运营商T-MobileUSA在纽约正式发布第一款Goog le手机——T-Mobile G1。该款手机为台湾宏达电代工制造,是世界上第一部使用Android操作系统的手机,支持WCDMA/HSPA网络,理论下载速率7.2Mbps,并支持Wi-Fi。 (左图为Androidlogo) [编辑本段]

安卓操作系统简介

安卓操作系统简介 简言: Android一词的本义指“机器人”,同时也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统、中间件、用户界面和应用软件组成,号称是首个为移动终端打造的真正开放和完整的移动软件。目前,最新版本为Android 2.4 Gingerbread和Android 3.0 Honeycomb。 系统介绍: Android是基于Linux内核的操作系统,是Google公司在2007年11月5日公布的手机操作系统,早期由Google开发,后由开放手持设备联盟(Open Handset Alliance)开发。它采用了软件堆层(software stack,又名以软件叠层)的架构,主要分为三部分。底层Linux内核只提供基本功能;其他的应用软件则由各公司自行开发,部分程序以Java编写。 2010年末数据显示,仅正式推出两年的操作系统Android已经超越称霸十年的诺基亚(Nokia)Symbian OS系统,采用Android系统主要手机厂商包括宏达电子(HTC)、三星(SAMSUNG)、摩托罗拉(MOTOROLA)、LG、Sony Ericsson、魅族M9等,使之跃居全球最受欢迎的智能手机平台,Android系统不但应用于智能手机,也在平板电脑市场急速扩张。 系统架构: 应用程序: Android以Java为编程语言,使接口到功能,都有层出不穷的变化,其中Activity 等同于J2ME的MIDlet,一个Activity 类(class)负责创建视窗(window),一个活动中的Activity就是在foreground(前景)模式,背景运行的程序叫做Service。两者之间通过由ServiceConnection和AIDL连结,达到复数程序同时运行的效果。如果运行中的Activity 全部画面被其他Activity 取代时,该Activity 便被停止(stopped),甚至被系统清除(kill)。 View等同于J2ME的Displayable,程序人员可以通过View 类与“XML layout”档将UI放置在视窗上,Android 1.5的版本可以利用View 打造出所谓的Widgets,其实Widget只是View的一种,所以可以使用xml来设计layout,HTC 的Android Hero手机即含有大量的widget。至于ViewGroup 是各种layout 的基础抽象类(abstract class),ViewGroup之内还可以有ViewGroup。View的构造函数不需要再Activity中调用,但是Displayable的是必须的,在Activity 中,要通过findViewById()来从XML中取得View,Android的View类的显示很大程度上是从XML中读取的。View 与事件(event)息息相关,两者之间通过Listener 结合在一起,每一个View都可以注册一个event listener,例如:当View要处理用户触碰(touch)的事件时,就要向Android框架注册View.OnClickListener。另外还有Image等同于J2ME的BitMap。 中介软件 操作系统与应用程序的沟通桥梁,并用分为两层:函数层(Library)和虚拟机(Virtual Machine)。Bionic是Android 改良libc的版本。Android 同时包含了Webkit,所谓的Webkit 就是Apple Safari 浏览器背后的引擎。Surface flinger 是就2D或3D的内容显示到屏幕上。Android使用工具链(Toolchain)为Google自

Android系统文件夹目录结构详解

Android系统文件夹目录结构详解 内容手机核心提示:本文介绍的是Android手机系统的文件夹结构,帮助大家更直观地了解系统,作为查询工具加入收藏夹还是很不错的哦*^_^*\\system\\app这个里面主要存放的是常规下载的应用程序,可以看到都是以APK格式结尾的文件。在这个文件夹下的程序为系统默认的组件,自己安装的软件将不会出现在这里,而是\\data\\文件夹中。 下面是详细的介绍: \\system\\app\\AlarmClock.apk闹钟 \\system\\app\\AlarmClock.odex\\system\\app\\Browser.apk浏览器 \\system\\app\\Browser.odex\\system\\app\\Bugreport.apk Bug报告 \\system\\app\\Bugreport.odex\\system\\app\\Calculator.apk计算器 \\system\\app\\Calculator.odex\\system\\app\\Calendar.apk日历 \\system\\app\\Calendar.odex\\system\\app\\CalendarProvider.apk日历提供 \\system\\app\\CalendarProvider.odex\\system\\app\\Camera.apk照相机 \\system\\app\\Camera.odex\\system\\app\\com.amazon.mp3.apk亚马逊音乐 \\system\\app\\Contacts.apk联系人 \\system\\app\\Contacts.odex\\system\\app\\DownloadProvider.apk下载提供 \\system\\app\\DownloadProvider.odex\\system\\app\\DrmProvider.apk DRM数字版权提供 \\system\\app\\DrmProvider.odex\\system\\app\\Email.apk电子邮件客户端 \\system\\app\\Email.odex\\system\\app\\FieldTest.apk测试程序 \\system\\app\\FieldTest.odex\\system\\app\\GDataFeedsProvider.apk GoogleData提供 \\system\\app\\GDataFeedsProvider.odex\\system\\app\\Gmail.apk Gmail电子邮件 \\system\\app\\Gmail.odex\\system\\app\\GmailProvider.apk Gmail提供 \\system\\app\\GmailProvider.odex\\system\\app\\GoogleApps.apk谷歌程序包 \\system\\app\\GoogleApps.odex\\system\\app\\GoogleSearch.apk搜索工具 \\system\\app\\GoogleSearch.odex\\system\\app\\gtalkservice.apk GTalk服务 \\system\\app\\gtalkservice.odex\\system\\app\\HTMLViewer.apk HTML查看器 \\system\\app\\HTMLViewer.odex\\system\\app\\IM.apk即时通讯组件包含MSN、yahoo通 \\system\\app\\ImCredentialProvider.apk\\system\\app\\ImProvider.apk\\system\\app\\ImProvider. odex\\system\\app\\Launcher.apk启动加载器 \\system\\app\\Launcher.odex\\system\\app\\Maps.apk电子地图 \\system\\app\\Maps.odex\\system\\app\\MediaProvider.apk多媒体播放提供 \\system\\app\\MediaProvider.odex\\system\\app\\Mms.apk短信、彩信 \\system\\app\\Mms.odex\\system\\app\\Music.apk音乐播放器 \\system\\app\\Music.odex\\system\\app\\MyFaves.apk T-Mobile MyFaves程序 \\system\\app\\MyFaves.odex\\system\\app\\PackageInstaller.apk apk安装程序 \\system\\app\\PackageInstaller.odex\\system\\app\\Phone.apk电话拨号器 \\system\\app\\Phone.odex\\system\\app\\Settings.apk系统设置 \\system\\app\\Settings.odex\\system\\app\\SettingsProvider.apk设置提供 \\system\\app\\SettingsProvider.odex\\system\\app\\SetupWizard.apk设置向导 \\system\\app\\SetupWizard.odex\\system\\app\\SoundRecorder.apk录音工具

安卓系统文件说明介绍

转:教程:安卓系统文件说明介绍(DIY 你的系统) 执行以下操作需要先注意的: 1. 手机已获得最高权限.备份你的ROM,以便崩溃时还原,备份教程参见此贴备份部分。如何进行备份,论坛里有很多教程,查找下很多的。 2. 备份 \system\app 这个目录到 SD 卡上,这样任何时候都可以将误删的软件重新拷贝还原。 接下来,就打开R.E浏览器或者其它有ROOT权限的浏览器进入系统目录的APP 目录删除文件吧。systme\app 目录。 必删软件:下手不留情,纯粹是一坨累赘 california-gold-rush.apk--- 垃圾收费游戏。必删 rollercoaster.apk ---垃圾收费游戏。必删 peggle.apk ---垃圾收费游戏。---必删 user-support.apk --- 用户支援---。必删 EManual.apk ---用户帮助手册---,必删 LearningClient.apk--- 未知,看名字貌似是和用户手册同一个德性。删除// playnowclient.apk ---PlayNow!收费的在线应用商店。必删 YouTube.apk ---国内无法访问。必删(在国外,港澳台和有购买科学上网服务的朋友可以考虑保留) Facebook.apk ---国内无法访问。必删(在国外,港澳台和有购买科学上网服务的朋友可以考虑保留) Timescape.apk TimeScapeProvider.apk// TimescapePluginManager.apk uWlopProvider.apk SnsContactImageCacheProvider.apk 以上五个程序都是跟 TimeScape 有关,全部删除(这货确实没什么用、删除的时候一定注意文件名相符,防止误删出错,切记) 可删软件:爱删不删,看你需不需要 已删或建议保留:是个人风格的爱好需求,仅供参考 trackid.apk --- 歌曲识别软件。已删(这玩意谁用啊) wisepilot.apk --- GPS 导航软件。建议保留 Email.apk --- 电子邮件,有 gmail 就足够。已删 roadsync.apk --- 不好说这是个什么软件,你自己试一下就知道。已删creatouch-2.apk --- 图画创作软件。建议保留(很好玩哇) Stopwatch.apk --- 记秒器,从零开始计时。建议保留 Timer.apk --- 倒计时,设定一个时间,倒计时到零。已删 Notes.apk--- 便签。已删(最佳替代品: ColorNote) Mms.apk ---短信程序。已删(最佳替代品: Handcent SMS) Music.apk ---音乐播放器。建议保留(其实挺好用的) Video.apk ---电影播放器。建议保留(市场上的电影播放器虽然能保证读取

Android系统启动过程详解

Android系统启动过程详解 Android系统启动过程 首先Android框架架构图:(来自网上,我觉得这张图看起来很清晰) Linux内核启动之后就到Android Init进程,进而启动Android相关的服务和应用。 启动的过程如下图所示:(图片来自网上,后面有地址)

下面将从Android4.0源码中,和网络达人对此的总结中,对此过程加以学习了解和总结, 以下学习过程中代码片段中均有省略不完整,请参照源码。

一Init进程的启动 init进程,它是一个由内核启动的用户级进程。内核自行启动(已经被载入内存,开始运行, 并已初始化所有的设备驱动程序和数据结构等)之后,就通过启动一个用户级程序init的方式,完成引导进程。init始终是第一个进程。 启动过程就是代码init.c中main函数执行过程:system\core\init\init. c 在函数中执行了:文件夹建立,挂载,rc文件解析,属性设置,启动服务,执行动作,socket监听…… 下面看两个重要的过程:rc文件解析和服务启动。 1 rc文件解析 .rc文件是Android使用的初始化脚本文件(System/Core/Init/readm e.txt中有描述: four broad classes of statements which are Actions, Commands, Services, and Options.) 其中Command 就是系统支持的一系列命令,如:export,hostname,mkdir,mount,等等,其中一部分是linux 命令, 还有一些是android 添加的,如:class_start :启动服务,class_stop :关闭服务,等等。 其中Options是针对Service 的选项的。 系统初始化要触发的动作和要启动的服务及其各自属性都在rc脚本文件中定义。具体看一下启动脚本:\system\core\rootdir\init.rc 在解析rc脚本文件时,将相应的类型放入各自的List中: \system\core\init\Init_parser.c :init_parse_config_file( )存入到 action_queue、action_list、service_list中,解析过程可以看一下parse_config函数,类似状态机形式挺有意思。 这其中包含了服务:adbd、servicemanager、vold、ril-daemon、deb uggerd、surfaceflinger、zygote、media…… 2 服务启动 文件解析完成之后将service放入到service_list中。 文件解析完成之后将service放入到service_list中。 \system\core\init\builtins.c

相关文档
最新文档