




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、zigbee綜合實(shí)踐課程設(shè)計(jì):基于zigbee的火災(zāi)報(bào)警系統(tǒng)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院ZigBee綜合實(shí)踐課程設(shè)計(jì)報(bào)告設(shè)計(jì)題目: 基于zigbee的火災(zāi)報(bào)警系統(tǒng) 設(shè)計(jì)人員:程 念 學(xué)號(hào):123921036 指導(dǎo)教師: 王 忠 友 2015年4月 目錄摘要IABSTRACTII1設(shè)計(jì)目標(biāo)12設(shè)計(jì)內(nèi)容13設(shè)計(jì)方案24實(shí)驗(yàn)所需器件35實(shí)驗(yàn)各模塊電路設(shè)計(jì)35.1 核心板模塊35.2 傳感器模塊46實(shí)驗(yàn)設(shè)計(jì)66.1目的66.2 系統(tǒng)原理圖66.3完成實(shí)物圖97調(diào)試與結(jié)果107.1核心代碼107.2上位機(jī)測(cè)試128設(shè)計(jì)總結(jié):(成員作用與體會(huì))139附件1310成績(jī)報(bào)告24基于zigbee的火災(zāi)報(bào)警系統(tǒng)摘要隨著經(jīng)
2、濟(jì)的發(fā)展,高層建筑、地下建筑以及大型綜合性建筑日益增多火災(zāi)隱患也隨之增加,火災(zāi)發(fā)生的數(shù)量及其造成的損失都呈逐年上升趨勢(shì),因此,火災(zāi)報(bào)警系統(tǒng)成為保障人生命財(cái)產(chǎn)安全的重要因素。而目前我國(guó)的火災(zāi)報(bào)警系統(tǒng)主要是總線型報(bào)警系統(tǒng),由于外界環(huán)境因素的影響不可避免的會(huì)存在一定的誤報(bào)率和漏報(bào)率,而且安裝和維修成本很高。伴隨著ZigBee技術(shù)的出現(xiàn)和發(fā)展,它使無線型火災(zāi)報(bào)警系統(tǒng)成為了可能,基于網(wǎng)絡(luò)化的火災(zāi)報(bào)警系統(tǒng)具有成本低、安裝方便、穩(wěn)定性高的特點(diǎn)。ZigBee具有短時(shí)延和數(shù)據(jù)傳輸可靠的獨(dú)特優(yōu)勢(shì),它更適合于火災(zāi)報(bào)警系統(tǒng)中。本設(shè)計(jì)以CC2530為核心控制芯片,采用Z-Stack協(xié)議棧作為協(xié)議平臺(tái)組成一個(gè)小型的Zig
3、Bee網(wǎng)絡(luò),系統(tǒng)由一個(gè)協(xié)調(diào)器設(shè)備和一個(gè)終端設(shè)備組成一個(gè)小型網(wǎng)絡(luò)。終端設(shè)備作為傳感器節(jié)點(diǎn)采集溫度、煙霧數(shù)據(jù),將終端設(shè)備放在室內(nèi)的不同地方,將采集到的數(shù)據(jù)無線傳輸?shù)絽f(xié)調(diào)器節(jié)點(diǎn),通過串口將各個(gè)傳感器節(jié)點(diǎn)的信息傳輸?shù)缴衔粰C(jī),上位機(jī)用VB編寫,完成數(shù)據(jù)的顯示和儲(chǔ)存,基本上實(shí)現(xiàn)了家庭火災(zāi)報(bào)警系統(tǒng)所應(yīng)有的功能?!娟P(guān)鍵詞】 ZigBee 火災(zāi)報(bào)警 CC2530Z-Stack協(xié)議棧 IIABSTRACTWith the development of economy, high-rise buildings, underground structures and increasingly large compre
4、hensive buildings, the fire hazard also will increase, the number of fires and the damage caused by rising trend year by year, as a result, fire alarm system become the important factor of people life and property security. And fire alarm system in our country at present is mainly form alarm system,
5、 because of the influence of the external environment factors, there are inevitably some non-response rates and the rate of false positives, and installation and maintenance cost is very high. Accompanied by the emergence and development of ZigBee technology, it makes no linear fire alarm system, fi
6、re alarm system based on network has characteristics of low cost, easy installation, high stability. ZigBee has the unique advantages of short time delay and data transmission is reliable, it is more suitable for fire alarm system. CC2530 this design as the core control chip, using Z - Stack protoco
7、l Stack as deal platform, forming a small ZigBee network and system consists of a coordinator and a terminal equipment of a small network. Terminal equipment as the data collection temperature, smoke sensor node, terminal equipment in different parts of the interior, the collected data wireless tran
8、smission to the coordinator node, through a serial port to transmit information of each sensor node to PC, PC written in LabVIEW software, complete the data display and storage, basically realized the function of fire alarm system of the family should have.【Keywords】ZigBee , Fire alarm ,CC2530 Z - S
9、tack protocol Stack; II1設(shè)計(jì)目標(biāo)本次設(shè)計(jì)要求能通過zigbee終端節(jié)點(diǎn)上火焰?zhèn)鞲衅鞑杉鹁畔?,并將采集?shù)據(jù)實(shí)時(shí)發(fā)送給協(xié)調(diào)器,檢測(cè)是否有火災(zāi)發(fā)生,并且通過VB上位機(jī)顯示出來;同時(shí)要求學(xué)生對(duì)CC2530芯片編程和zigbee協(xié)議棧有相當(dāng)程度的理解以及熟練的應(yīng)用,熟悉ZigBee串口以及中斷的使用,會(huì)基本的C語言熟練掌握IAR FOR 8051軟件的使用與程序下載。2設(shè)計(jì)內(nèi)容(1) 利用zigbee核心板,用AD設(shè)計(jì)好電路板,搭建好硬件環(huán)境,調(diào)試好火焰?zhèn)鞲衅?;?) 將火焰?zhèn)鞲衅髯鳛楣?jié)點(diǎn)采用廣播方式加入到zigbee協(xié)調(diào)器網(wǎng)絡(luò)中;(3) 編寫并調(diào)試程序,并分別下載到協(xié)調(diào)器和
10、終端節(jié)點(diǎn),并將協(xié)調(diào)器串口鏈接到電腦,實(shí)現(xiàn)VB上位機(jī)顯示火警狀態(tài),設(shè)計(jì)完成。開始傳感器,串口初始化檢測(cè)串口受到數(shù)據(jù)否是保持監(jiān)聽協(xié)調(diào)器判斷傳感器狀態(tài)(是:有火災(zāi) 否:無火災(zāi))發(fā)往上層2.1系統(tǒng)組成框圖3設(shè)計(jì)方案(1) CC2530芯片做接收信息設(shè)備和控制設(shè)備。(2) ZigBee終端設(shè)備和協(xié)調(diào)器組網(wǎng)成功通信。(3) 終端設(shè)備監(jiān)測(cè)傳感器狀態(tài),并實(shí)時(shí)傳給協(xié)調(diào)器。(4) 協(xié)調(diào)器獲取傳感器狀態(tài),并做出處理,同時(shí)VB上位機(jī)展示。4實(shí)驗(yàn)所需器件(1) 核心板,此處采用CC2530核心板(2) 火焰?zhèn)鞲衅髂K,及各種常用元器件(3) ZigBee核心板和JLINK下載模塊及其相關(guān)的驅(qū)動(dòng)(4) 杜邦線若干,電池若
11、干(最好是可以充電的)5實(shí)驗(yàn)各模塊電路設(shè)計(jì)5.1 核心板模塊(1)芯片的選擇:CC2530(2)芯片的介紹:*高性能、低功耗的 8051 微控制器內(nèi)核; *適應(yīng) 2.4GHz IEEE 802.15.4的RF 收發(fā)器; *電源電壓范圍寬(2.03.6V); *看門狗、電池監(jiān)視器和溫度傳感器; *具有 8 路輸入 814 位 ADC; *2 個(gè)支持多種串行通信協(xié)議的 USART, 1 個(gè)紅外發(fā)生電路; *1 個(gè)通用的 16 位和 2 個(gè) 8 位定時(shí)器; 圖 5.1.3(4)實(shí)物圖: 圖 傳感器模塊(1)所用傳感器:火焰?zhèn)鞲衅?(2) 特點(diǎn):1、 可以檢測(cè)火焰或者波長(zhǎng)在760納米1
12、100納米范圍內(nèi)的光源,打火機(jī)測(cè)試火焰距離為80cm,對(duì)火焰越大,測(cè)試距離越遠(yuǎn)2、 探測(cè)角度60度左右,對(duì)火焰光譜特別靈敏3 、靈敏度可調(diào)(圖中藍(lán)色數(shù)字電位器調(diào)節(jié))4、比較器輸出,信號(hào)干凈,波形好,驅(qū)動(dòng)能力強(qiáng),超過15mA5、配可調(diào)精密電位器調(diào)節(jié)靈敏度6、工作電壓3.3V-5V7、輸出形式 :數(shù)字開關(guān)量輸出(0和1)8、設(shè)有固定螺栓孔,方便安裝9、小板PCB尺寸:3.2cm x 1.4cm10、使用寬電壓LM393比較器(3傳感器使用說明:1 .火焰?zhèn)鞲衅鲗?duì)火焰最敏感,對(duì)普通光也是有反應(yīng)的,一般用做火焰報(bào)警等用途。2. 小板輸出接口可以與單片機(jī)IO口直接相連,有火災(zāi)輸出低電平正常輸出高電平3.
13、傳感器與火焰要保持一定距離,以免高溫?fù)p壞傳感器,對(duì)打火機(jī)測(cè)試火焰距離 為80cm,對(duì)火焰越大,測(cè)試距離越遠(yuǎn) 圖5.2.3(4)實(shí)物圖: 圖 5.2.46實(shí)驗(yàn)設(shè)計(jì)6.1目的熟悉基于zigbee的控制系統(tǒng)的使用,為今后進(jìn)一步學(xué)習(xí)物聯(lián)網(wǎng)無線傳感網(wǎng)打下基礎(chǔ)。6.2 系統(tǒng)原理圖圖6.2.1終端節(jié)點(diǎn)原理圖圖6.2.2 終端節(jié)點(diǎn)PCB圖6.2.3協(xié)調(diào)器原理圖6.2.4協(xié)調(diào)器PCB圖6.3完成實(shí)物圖圖6.3.1 正視圖圖6.3.2底面圖7調(diào)試與結(jié)果7.1核心代碼7.1.1 初始化部分,串口初始化,登記串口任務(wù)號(hào),傳感器接口初始化7.1.2 火災(zāi)判斷部分7.1.3 發(fā)送部分7.1.4 接收并串口打印部分7.2上
14、位機(jī)測(cè)試(1)班級(jí)總控界面如下,在程念組里面就可以實(shí)時(shí)觀察火焰?zhèn)鞲衅鳡顟B(tài)。圖 7.28設(shè)計(jì)總結(jié):通過這次實(shí)踐課程,通過親自動(dòng)手,從最初確定課題,到畫設(shè)計(jì)PCB,到印刷電路板,到焊接元器件,到測(cè)試電路,到調(diào)試程序,經(jīng)過了反復(fù)的修改和實(shí)踐,終于完成課題,一路走來,確實(shí)很不易。畫PCB,制板,編程,調(diào)試等各方面能力都得到了提升.9附件應(yīng)用層源碼:#include "OSAL.h"#include "ZGlobals.h"#include "AF.h"#include "aps_groups.h"#include &quo
15、t;ZDApp.h"#include "SampleApp.h"#include "SampleAppHw.h"#include "OnBoard.h"/* HAL */#include "hal_lcd.h"#include "hal_led.h"#include "hal_key.h"#include "MT_UART.h" /此處用于串口/定義IO#define LED1 P0_0 /LED提醒#define fire P0_6 /傳感器檢
16、測(cè)口/* * MACROS */* * CONSTANTS */* * TYPEDEFS */* * GLOBAL VARIABLES */ This list should be filled with Application specific Cluster IDs.const cId_t SampleApp_ClusterListSAMPLEAPP_MAX_CLUSTERS = SAMPLEAPP_PERIODIC_CLUSTERID, SAMPLEAPP_FLASH_CLUSTERID;const SimpleDescriptionFormat_t SampleApp_SimpleDe
17、sc = SAMPLEAPP_ENDPOINT, / int Endpoint; SAMPLEAPP_PROFID, / uint16 AppProfId2; SAMPLEAPP_DEVICEID, / uint16 AppDeviceId2; SAMPLEAPP_DEVICE_VERSION, / int AppDevVer:4; SAMPLEAPP_FLAGS, / int AppFlags:4; SAMPLEAPP_MAX_CLUSTERS, / uint8 AppNumInClusters; (cId_t *)SampleApp_ClusterList, / uint8 *pAppIn
18、ClusterList; SAMPLEAPP_MAX_CLUSTERS, / uint8 AppNumInClusters; (cId_t *)SampleApp_ClusterList / uint8 *pAppInClusterList;/ This is the Endpoint/Interface description. It is defined here, but/ filled-in in SampleApp_Init(). Another way to go would be to fill/ in the structure here and make it a "
19、;const" (in code space). The/ way it's defined in this sample app it is define in RAM.endPointDesc_t SampleApp_epDesc;/* * EXTERNAL VARIABLES */* * EXTERNAL FUNCTIONS */* * LOCAL VARIABLES */uint8 SampleApp_TaskID; / Task ID for internal task/event processing / This variable will be receive
20、d when / SampleApp_Init() is called.devStates_t SampleApp_NwkState;uint8 SampleApp_TransID; / This is the unique message ID (counter)afAddrType_t SampleApp_Periodic_DstAddr;/廣播afAddrType_t SampleApp_Flash_DstAddr; /組播afAddrType_t Point_To_Point_DstAddr;/網(wǎng)蜂點(diǎn)對(duì)點(diǎn)通信定義aps_Group_t SampleApp_Group;uint8 Sam
21、pleAppPeriodicCounter = 0;uint8 SampleAppFlashCounter = 0;/* * LOCAL FUNCTIONS */void SampleApp_HandleKeys( uint8 shift, uint8 keys );void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pckt );void SampleApp_SendPeriodicMessage( void );void SampleApp_SendFlashMessage( uint16 flashTime );void SampleA
22、pp_SendPeriodicMessage1( void ); /正常 周期性廣播函數(shù)聲明void SampleApp_SendPeriodicMessage2( void ); /有火災(zāi)!/void SampleApp_SendPeriodicMessage3( void ); /void SampleApp_SendPeriodicMessage4( void ); /* * NETWORK LAYER CALLBACKS */* * PUBLIC FUNCTIONS */* * fn SampleApp_Init * * brief Initialization function fo
23、r the Generic App Task. * This is called during initialization and should contain * any application specific initialization (ie. hardware * initialization/setup, table initialization, power up * notificaiton . ). * * param task_id - the ID assigned by OSAL. This ID should be * used to send messages
24、and set timers. * * return none */void SampleApp_Init( uint8 task_id ) SampleApp_TaskID = task_id;/ task_id is Pointer to location of the Application task ID. SampleApp_NwkState = DEV_INIT; SampleApp_TransID = 0; / This is the unique message ID (counter) MT_UartInit();/串口初始化 MT_UartRegisterTaskID(ta
25、sk_id);/登記任務(wù)號(hào) /*火災(zāi)探測(cè)傳感器電路初始化*/ P0SEL &= 0X40; /設(shè)置P0.6為普通IO口 P0DIR &= 0X40; / 在P0.6口,設(shè)置為輸入模式 P0INP &= 0x40; /打開P0.6上拉電阻 / Device hardware initialization can be added here or in main() (Zmain.c). / If the hardware is application specific - add it here. / If the hardware is other parts of t
26、he device add it in main(). #if defined ( BUILD_ALL_DEVICES ) / The "Demo" target is setup to have BUILD_ALL_DEVICES and HOLD_AUTO_START / We are looking at a jumper (defined in SampleAppHw.c) to be jumpered / together - if they are - we will start up a coordinator. Otherwise, / the device
27、 will start as a router. if ( readCoordinatorJumper() ) zgDeviceLogicalType = ZG_DEVICETYPE_COORDINATOR; else zgDeviceLogicalType = ZG_DEVICETYPE_ROUTER;#endif / BUILD_ALL_DEVICES#if defined ( HOLD_AUTO_START ) / HOLD_AUTO_START is a compile option that will surpress ZDApp / from starting the device
28、 and wait for the application to / start the device. ZDOInitDevice(0);#endif / Setup for the periodic message's destination address / Broadcast to everyone 廣播參數(shù)配置 SampleApp_Periodic_DstAddr.addrMode = (afAddrMode_t)AddrBroadcast; SampleApp_Periodic_DstAddr.endPoint = SAMPLEAPP_ENDPOINT; SampleAp
29、p_Periodic_DstAddr.addr.shortAddr = 0xFFFF; /*0xFFFF數(shù)據(jù)包將被傳送到網(wǎng)絡(luò)上的所有設(shè)備, 包括睡眠中的設(shè)備。對(duì)于睡眠中的設(shè)備,數(shù)據(jù)包將被保留在其父親節(jié)點(diǎn)直到查詢 到它,或者消息超時(shí)。 0xFFFD數(shù)據(jù)包將被傳送到網(wǎng)絡(luò)上的所有在空閑時(shí) 打開接收的設(shè)備(RXONWHENIDLE),也就是說,除了睡眠中的所有設(shè)備。 0xFFFC數(shù)據(jù)包發(fā)送給所有的路由器,包括協(xié)調(diào)器。*/ / Setup for the flash command's destination address - Group 1 組播 SampleApp_Flash_DstAdd
30、r.addrMode = (afAddrMode_t)afAddrGroup; SampleApp_Flash_DstAddr.endPoint = SAMPLEAPP_ENDPOINT; SampleApp_Flash_DstAddr.addr.shortAddr = SAMPLEAPP_FLASH_GROUP; / Fill out the endpoint description. SampleApp_epDesc.endPoint = SAMPLEAPP_ENDPOINT; SampleApp_epDesc.task_id = &SampleApp_TaskID; Sample
31、App_epDesc.simpleDesc = (SimpleDescriptionFormat_t *)&SampleApp_SimpleDesc; SampleApp_epDesc.latencyReq = noLatencyReqs; / Register the endpoint description with the AF afRegister( &SampleApp_epDesc ); / Register for all key events - This app will handle all key events RegisterForKeys( Sampl
32、eApp_TaskID ); / By default, all devices start out in Group 1 SampleApp_Group.ID = 0x0001; osal_memcpy( SampleApp_G, "Group 1", 7 ); aps_AddGroup( SAMPLEAPP_ENDPOINT, &SampleApp_Group );#if defined ( LCD_SUPPORTED ) HalLcdWriteString( "SampleApp", HAL_LCD_LINE_1 );#e
33、ndif/* * fn SampleApp_ProcessEvent * * brief Generic Application Task event processor. This function * is called to process all events for the task. Events * include timers, messages and any other user defined events. * * param task_id - The OSAL assigned task ID. * param events - events to process.
34、 This is a bit map and can * contain more than one event. * * return none */uint16 SampleApp_ProcessEvent( uint8 task_id, uint16 events ) afIncomingMSGPacket_t *MSGpkt; (void)task_id; / Intentionally unreferenced parameter if ( events & SYS_EVENT_MSG ) MSGpkt = (afIncomingMSGPacket_t *)osal_msg_
35、receive( SampleApp_TaskID ); while ( MSGpkt ) switch ( MSGpkt->hdr.event ) / Received when a key is pressed case KEY_CHANGE:/按鍵觸發(fā)事件 SampleApp_HandleKeys( (keyChange_t *)MSGpkt)->state, (keyChange_t *)MSGpkt)->keys ); break; / Received when a messages is received (OTA) for this endpoint case
36、 AF_INCOMING_MSG_CMD:/接收數(shù)據(jù)事件 SampleApp_MessageMSGCB( MSGpkt ); break; / Received whenever the device changes state in the network case ZDO_STATE_CHANGE:/設(shè)備狀態(tài)變化事件 SampleApp_NwkState = (devStates_t)(MSGpkt->hdr.status); if ( (SampleApp_NwkState = DEV_ZB_COORD)| /協(xié)調(diào)器、路由器 (SampleApp_NwkState = DEV_RO
37、UTER) /或者終端都執(zhí)行 | (SampleApp_NwkState = DEV_END_DEVICE) ) / Start sending the periodic message in a regular interval. osal_start_timerEx( SampleApp_TaskID, SAMPLEAPP_SEND_PERIODIC_MSG_EVT, SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT ); else / Device is no longer in the network break; default: break; / Releas
38、e the memory釋放Flash osal_msg_deallocate( (uint8 *)MSGpkt ); / Next - if one is available MSGpkt = (afIncomingMSGPacket_t *)osal_msg_receive( SampleApp_TaskID ); / return unprocessed events return (events SYS_EVENT_MSG); / Send a message out - This event is generated by a timer / (setup in SampleApp_
39、Init(). if ( events & SAMPLEAPP_SEND_PERIODIC_MSG_EVT ) /周期性發(fā)送函數(shù) if(fire=1) SampleApp_SendPeriodicMessage1(); /正常,無火災(zāi) else if(fire=0) SampleApp_SendPeriodicMessage2(); /有火災(zāi)! / Send the periodic message / SampleApp_SendPeriodicMessage(); / Setup to send message again in normal period (+ a little
40、jitter) osal_start_timerEx( SampleApp_TaskID, SAMPLEAPP_SEND_PERIODIC_MSG_EVT, (SAMPLEAPP_SEND_PERIODIC_MSG_TIMEOUT + (osal_rand() & 0x00FF) ); / return unprocessed events return (events SAMPLEAPP_SEND_PERIODIC_MSG_EVT); / Discard unknown events return 0;/* * Event Generation Functions */* * fn
41、SampleApp_HandleKeys * * brief Handles all key events for this device. * * param shift - true if in shift/alt. * param keys - bit field for key events. Valid entries: * HAL_KEY_SW_2 * HAL_KEY_SW_1 * * return none */void SampleApp_HandleKeys( uint8 shift, uint8 keys ) (void)shift; / Intentionally unr
42、eferenced parameter if ( keys & HAL_KEY_SW_1 ) /* This key sends the Flash Command is sent to Group 1. * This device will not receive the Flash Command from this * device (even if it belongs to group 1). */ SampleApp_SendFlashMessage( SAMPLEAPP_FLASH_DURATION );/向flash發(fā)送數(shù)據(jù) if ( keys & HAL_KE
43、Y_SW_2 ) /* The Flashr Command is sent to Group 1. * This key toggles this device in and out of group 1. * If this device doesn't belong to group 1, this application * will not receive the Flash command sent to group 1. */ aps_Group_t *grp; grp = aps_FindGroup( SAMPLEAPP_ENDPOINT, SAMPLEAPP_FLAS
44、H_GROUP ); if ( grp ) / Remove from the group aps_RemoveGroup( SAMPLEAPP_ENDPOINT, SAMPLEAPP_FLASH_GROUP ); else / Add to the flash group aps_AddGroup( SAMPLEAPP_ENDPOINT, &SampleApp_Group ); /* * LOCAL FUNCTIONS */* * fn SampleApp_MessageMSGCB * * brief Data message processor callback. This fun
45、ction processes * any incoming data - probably from other devices. So, based * on cluster ID, perform the intended action. * * param none * * return none */void SampleApp_MessageMSGCB( afIncomingMSGPacket_t *pkt )/接收一個(gè)信息包 uint16 flashTime; switch ( pkt->clusterId ) case SAMPLEAPP_CHENGNIAN_ID:/默認(rèn)接收接收ID為自定義廣播傳輸編號(hào) / HalUARTWrite(0,"Welcome to the Fire alarm system!-Chengniann",46);/串口打印測(cè)試 HalUARTWrite(0,&pkt->cmd.Data0,5); /打印受到數(shù)據(jù) HalUARTWrite(0,"
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 堡坎承包工程合同
- 環(huán)保產(chǎn)業(yè)園區(qū)入駐企業(yè)合作協(xié)議
- 標(biāo)準(zhǔn)房屋買賣合同
- 項(xiàng)目解決方案實(shí)施與進(jìn)度跟蹤報(bào)告
- 高級(jí)烹飪食材采購(gòu)及供應(yīng)責(zé)任免除協(xié)議書
- 北京液化石油氣鋼瓶租賃合同8篇
- 高中信息技術(shù)浙教版:4-3 以三維全景圖形式發(fā)布-教學(xué)設(shè)計(jì)
- 教學(xué)計(jì)劃(教學(xué)設(shè)計(jì))-2024-2025學(xué)年外研版(三起)英語四年級(jí)上冊(cè)
- 電子證據(jù)存證保全協(xié)議
- 第4課 認(rèn)識(shí)大數(shù)據(jù)(教學(xué)設(shè)計(jì))2024-2025學(xué)年六年級(jí)上冊(cè)信息技術(shù)浙江攝影版
- 培卵素是什么
- 《細(xì)菌》初中生物優(yōu)秀教學(xué)設(shè)計(jì)(教案)
- PID烙鐵恒溫控制器設(shè)計(jì)與制作_圖文
- wincc全套腳本總結(jié)
- ihaps用戶手冊(cè)
- 鐵塔組立施工作業(yè)指導(dǎo)書抱桿計(jì)算
- 總生產(chǎn)成本年度比較表
- 新媒體運(yùn)營(yíng)全工作計(jì)劃表(共2頁(yè))
- 2020河南中考化學(xué)試卷含答案
- 醫(yī)療器械全生命周期風(fēng)險(xiǎn)管理
- DNA甲基化檢測(cè)技術(shù)
評(píng)論
0/150
提交評(píng)論