<del id="dhfrq"></del>

    1. <tr id="dhfrq"></tr>
      成人午夜激情在线观看,国产精品一线天粉嫩av,99精品国产综合久久久久五月天 ,一卡2卡三卡4卡免费网站,国产高清在线男人的天堂,五月天国产成人AV免费观看,67194熟妇在线观看线路,成人无码潮喷在线观看
      現(xiàn)在位置:范文先生網(wǎng)>理工論文>電子通信論文>PIC單片機(jī)在智能雙電源裝置中的應(yīng)用

      PIC單片機(jī)在智能雙電源裝置中的應(yīng)用

      時間:2023-02-20 23:35:08 電子通信論文 我要投稿
      • 相關(guān)推薦

      PIC單片機(jī)在智能雙電源裝置中的應(yīng)用

      1.    智能雙電源裝置的簡介

          隨著對供電可靠性的要求也越來越高,很多場合用兩路電源來保證供電的可靠性。當(dāng)常用電源異常,智能雙電源裝置能自動切換到備用電源,智能雙電源裝置就是這種在兩路電源之間進(jìn)行可靠切換、以保證供電的裝置。在醫(yī)院、賓館和礦山等有廣泛的應(yīng)用。 

          智能雙電源裝置由開關(guān)本體和控制器兩部分組成。開關(guān)本體由電機(jī)通過機(jī)械聯(lián)鎖機(jī)構(gòu)控制常用電源的斷路器和備用電源的斷路器的分合,進(jìn)而控制電源的切換。控制器通過對電壓的采樣來判斷電源是否異常,如果出現(xiàn)異常應(yīng)產(chǎn)生相應(yīng)的切換。

      2.    PIC16F877A的簡介 

          美國Microchip公司的PIC 8位單片機(jī)其生產(chǎn)史11年,但現(xiàn)在其產(chǎn)量已躍居世界第二位(僅次于Motorola公司)。現(xiàn)在PIC單片機(jī)的品種已超過120種。PIC單片機(jī)是RISC結(jié)構(gòu)的單片機(jī),具有高速處理數(shù)據(jù)的特性(執(zhí)行速度可達(dá)120ns)。PIC16F877A內(nèi)部自帶看門狗、256Bytes的EEPROM、8路AD功能、ISP功能和寬電壓工作,工作可靠,能很好的適應(yīng)智能雙電源裝置應(yīng)用開發(fā)。

      3.    在8位單片機(jī)中 在PIC與51系列單片機(jī)的比較

      PIC的堆棧結(jié)構(gòu)是硬件固定的,PIC16F877A有8級深度的硬件堆棧,51系列單片機(jī)的堆棧結(jié)構(gòu)是在RAM區(qū),由程序指定SP的開始位置。

      PIC的RAM區(qū)每個Byte的位都可以尋址,有4條專用的位操作指令和2條移位指令。51系列單片機(jī)的只有0x20到0x2F的Bytes的位是可以尋址,有17條專用的位操作指令和4條移位指令。

      PIC的ROM和RAM是采用“頁”結(jié)構(gòu)的,每頁為512個Bytes,通過STATUS的位來選擇不同的頁,在程序調(diào)用和變量尋址的時候,要先確定目標(biāo)的頁,使有起來不是很方便。51系列單片機(jī)的ROM是可以在64K范圍內(nèi)尋址的,可程序直接尋址調(diào)用;RAM在0到0x7F可以直接尋址或間接尋址,0x80以上地址的RAM(包括擴(kuò)展的RAM)只有間接尋址。

      4.    智能雙電源裝置的動作處理

      雙電源控制器的有三種控制方式,自投自復(fù)方式、自投不自復(fù)方式和發(fā)電機(jī)方式。
      自投自復(fù)式方式:如果常用電源被檢測到出現(xiàn)偏差時,則自動將負(fù)載從常用電源轉(zhuǎn)換至備用電源;如果常用電源恢復(fù)正常時,則自動將負(fù)載返回?fù)Q接到常用電源。
      自投不自復(fù)式方式:如果常用電源被檢測到出現(xiàn)偏差時,則自動將負(fù)載從常用電源轉(zhuǎn)換至備用電源;如果常用電源恢復(fù)正常時,不能自動將負(fù)載返回?fù)Q接到正常電源供電。除非備用電源出現(xiàn)異常才進(jìn)行轉(zhuǎn)換。

      發(fā)電機(jī)方式:如果常用電源被檢測到出現(xiàn)偏差時,發(fā)出發(fā)電指令請求發(fā)電。當(dāng)發(fā)電電壓達(dá)到額定電壓時,先從電網(wǎng)斷開負(fù)載電路,自動轉(zhuǎn)換到發(fā)電電源供電;當(dāng)常用電源恢復(fù)正常后,則又自動返回?fù)Q接到正常電源供電,并發(fā)出停電指令,請求停止發(fā)電。

      以下是三種方式在不同合閘狀態(tài)下的程序任務(wù)處理簡述:

      自投自復(fù)方式在常用電源合閘狀態(tài),
      常用電源出現(xiàn)異常,進(jìn)行計(jì)時
      異常計(jì)時中
      異常計(jì)時完成,啟動電機(jī)
      常用電源正常,停止并恢復(fù)計(jì)時器
      備用電源異常,停止并恢復(fù)計(jì)時器
      自投自復(fù)方式在備用電源合閘狀態(tài),
      常用電源出現(xiàn)正常
      正常計(jì)時
      正常計(jì)時完成,啟動電機(jī)
      常用電源異常,停止計(jì)時
      自投不自復(fù)方式在常用電源合閘狀態(tài),
      常用電源出現(xiàn)異常,進(jìn)行計(jì)時
      異常計(jì)時中
      異常計(jì)時完成,啟動電機(jī)
      常用電源正常,停止并恢復(fù)計(jì)時器
      備用電源異常,停止并恢復(fù)計(jì)時器
      自投不自復(fù)方式在備用電源合閘狀態(tài),
      常用電源正常,備用電源異常,進(jìn)行計(jì)時
      計(jì)時中
      計(jì)時完成,啟動電機(jī)
      備用電源正常,停止并恢復(fù)計(jì)時器
      發(fā)電機(jī)方式在常用電源合閘狀態(tài),
      常用電源出現(xiàn)異常,進(jìn)行計(jì)時
      異常計(jì)時中
      異常計(jì)時完成,啟動發(fā)電機(jī)
      發(fā)電機(jī)啟動等待時間,計(jì)時中
      發(fā)電機(jī)等待時間完成,啟動電機(jī),進(jìn)行切換動作
      常用電源正常,停止任何計(jì)時,并恢復(fù)計(jì)時器
      發(fā)電機(jī)方式在備用電源合閘狀態(tài),
      常用電源正常,計(jì)時開始
      計(jì)時中,
      正常計(jì)時完成,啟動電機(jī),進(jìn)行切換動作
      常用電源異常,停止計(jì)時,并恢復(fù)計(jì)時器
      如何把這些相近的操作歸納成相同的函數(shù)進(jìn)行處理,才可以節(jié)約程序代碼。我把這些操作歸納成如下程序:
      ……
      typedef union
      {
          unsigned char cc;
          struct 
          {
              unsigned char bit0:1;
              unsigned char bit1:1;
              unsigned char bit2:1;
              unsigned char bit3:1;
              unsigned char bit4:1;
              unsigned char bit5:1;
              unsigned char bit6:1;
              unsigned char bit7:1;
       &

      nbsp;  }Bits;
      } Char_Bit;
      Char_Bit VolErrFlag[2];            // 可以用位或字節(jié)操作
      static void CheckVolErr(unsigned char i)
      // I=0, 檢查常用電源的電壓,更新缺相,欠壓和過壓標(biāo)志位
      // I=1, 檢查備用電源的電壓,更新缺相,欠壓和過壓標(biāo)志位
      {
          ……
      }
      static void StartTurn(unsigned char bi)
      // bi=0,轉(zhuǎn)到常用電源
      // bi=1,轉(zhuǎn)到備用電源
      {
          ……
      }
      static void CheckVol1(unsigned char i)
      // I=0,判斷常用電源的合閘狀態(tài)
      // I=1,判斷備用電源的合閘狀態(tài)
      {        // 電壓判斷,處理函數(shù)1
          unsigned char j,k;
          if (i==0)
              {
              j=0;
              k=1;
              }
          else
              {
              j=1;
              k=0;
              }
          if (VolErrFlag[j].cc==0)
              {
              bVolErrCnting=0;            // 恢復(fù)異常計(jì)時器標(biāo)記
              }
          else
              {
              if (bVolErrCnting==0)
                  {
                  di();
                  CLRWDT();
                  VolErrCnt=(unsigned int) LimParams.cc[j]*TiScale;        
                  // 預(yù)設(shè)異常計(jì)時器的初值
                  ei();
                  bVolErrCnting=1;
                  return;
                  }
              }
          if (VolErrFlag[k].cc !=0)
              bVolErrCnting=0;
          if (bVolErrCnting && VolErrCnt==0)
              {     &n

      bsp;  // 啟動轉(zhuǎn)換動作
              bVolErrCnting=0;
              bBkOpen1=k;
              CLRWDT();
              StartTurn(k);
              }
      }
      static void CheckVol2()
      {        // 電壓判斷,處理函數(shù)2
          if (VolErrFlag[0].cc !=0)
              {
              bVolErrCnting=0;   // 恢復(fù)異常計(jì)時器標(biāo)記
              }
          else
              {
              if (bVolErrCnting==0)
                  {
                  di();
                  CLRWDT();
                  VolErrCnt=(unsigned int) LimParams.Para.Trn*TiScale;    
                 // 預(yù)設(shè)異常計(jì)時器的初值
                  ei();
                  bVolErrCnting=1;
                  return;
                  }
              }
          if (bVolErrCnting && VolErrCnt==0)
              {    // 啟動轉(zhuǎn)換動作
              bVolErrCnting=0;
              CLRWDT();
              bBkOpen1=0;
              StartTurn(0);
              }
      }
      static void CheckVol3()
      {        // 電壓判斷,處理函數(shù)3
          if (VolErrFlag[0].cc==0)
              {
              bVolErrCnting=0;  // 恢復(fù)異常計(jì)時器標(biāo)記
              bDJstarting=0;
              }
          else
              {
              if (bVolErrCnting==0)
                  {
         &

      nbsp;        di();
                  CLRWDT();
                  VolErrCnt=(unsigned int) LimParams.Para.Tnr*TiScale;    
                  // 預(yù)設(shè)異常計(jì)時器的初值
                  ei();
                  bVolErrCnting=1;
                  return;
                  }
              }
          if (bVolErrCnting && bDJstarting==0 && VolErrCnt==0)
              {
              di();
              CLRWDT();
              DJstartCnt=(unsigned int)LimParams.Para.T1*TiScale;
              // 預(yù)設(shè)發(fā)電機(jī)啟動的等待計(jì)時器的初值
              ei();
              CLRWDT();
              bDJstarting=1;
              return;
              }
          if (bDJstarting &&  DJstartCnt==0)
              {   // 啟動轉(zhuǎn)換動作
              CLRWDT();
              bVolErrCnting=0;
              bBkOpen1=1;
              StartTurn(1);
              }
      }
      ……
      void main()
      {
      ……
                      if (bBkOpen1)
                          {    // 在備用電源合閘狀態(tài)
                          if (LimParams.Para.JobType==1)
                              {    // 自投不自復(fù)方式
                              CheckVol1(1);
                    

      ;          }
                          else
                              {  //自投不自復(fù)或發(fā)電機(jī)方式
                              CheckVol2();
                              }
                          }
                      else
                          {    // 在常用電源合閘狀態(tài)
                          if (LimParams.Para.JobType==2)
                              {  // 發(fā)電機(jī)工作方式
                              CheckVol3();
                              }
                          else
                              {     // 自投自復(fù)或自投不自復(fù)方式
                              CheckVol1(0);
                              }
                          }
      ……
      }
      5. 智能雙電源裝置的電壓采樣的校準(zhǔn)
         在實(shí)際生產(chǎn)中,由于采樣電阻的誤差,所以在相同的校準(zhǔn)電壓輸入,單片機(jī)采樣到的AD值是不一樣的。如何設(shè)定AD值和校準(zhǔn)電壓的校準(zhǔn)比例,是一個關(guān)鍵的問題,校準(zhǔn)比例不能在程序編譯中固定下來,因?yàn)檫@樣會有較大的誤差,即使改用精密電阻來采樣,誤差也不能減低很多。我在應(yīng)用中采用的方法是:提高采樣電路的線性度,使其在不同電壓下的校準(zhǔn)比例有很好的一致性(在解決了溫升的問題后,這點(diǎn)是可以做到的);在采樣電路輸入校準(zhǔn)電壓,輸入設(shè)置密碼后,單片機(jī)自動計(jì)算校準(zhǔn)比例,并把校準(zhǔn)比例進(jìn)行保存。
      ……
      void main()
      {
      ……
          ReadScal();
      ……
          while(1)
          {
      ……

      ……
          }
      }

      ……
      static void KeyProc()
      {……
          if ( SetKey==0)
              {
              ……
              if ( bSecPass==1)
                  {
                  // 設(shè)電壓
                  if (ReadScalFlag() !=0) 
                      return;
          // 如果已設(shè)定了比例,就不能再更改
                  CLRWDT();
                  ShowString(0, 0);
                  ShowString(1, 1);            // "pass"
                  ShowString(0, 2);    
              // 在LCD屏上顯示PASS
                  CLRWDT();
                  for (i=0; i!=6; i++)
                      ScalUarray[i]=IntUarray[i];    // 讀入比例參數(shù),
                  CLRWDT();
                  SaveScal();        // 保存比例參數(shù)
                  SaveScalFlag();  // 并改寫標(biāo)志
                  Delay5s();
                  return;
                  }
              ……
              }
      }



      【PIC單片機(jī)在智能雙電源裝置中的應(yīng)用】相關(guān)文章:

      射頻識別芯片在汽車智能防盜報警裝置中的應(yīng)用08-06

      IGBT-IPM智能模塊的電路設(shè)計(jì)及在SVG裝置中的應(yīng)用08-06

      PIC中檔單片機(jī)的中斷總結(jié)08-06

      基于PIC16C54單片機(jī)的智能軟件狗設(shè)計(jì)08-06

      熱泵裝置在空調(diào)廢熱回收中的應(yīng)用08-06

      基于PIC單片機(jī)的熱能表研制08-06

      PIC單片機(jī)在電話遠(yuǎn)程控制器中的低功耗設(shè)計(jì)08-06

      PIC18FXX8單片機(jī)通用同步異步收發(fā)器的編程應(yīng)用08-06

      單片機(jī)在生活中的應(yīng)用08-20

      主站蜘蛛池模板: 精品999日本久久久影院| 国产不卡一区二区四区| 亚洲男人第一无码av网站| 久久天天躁狠狠躁夜夜不卡 | 男人的天堂av社区在线| 亚洲熟妇熟女久久精品综合| 91麻豆精品国产91久| 国产精品国产三级国av| 日本中文字幕乱码免费| 久久亚洲av午夜福利精品一区| 欧美嫩交一区二区三区| 天堂V亚洲国产V第一次| 久久99国产精品尤物| 午夜福利在线观看6080| 久久精品第九区免费观看| 亚洲永久精品免费在线看| 国产乱码日韩亚洲精品成人| 色综合人人超人人超级国碰| 农村老熟女一区二区三区| 亚洲国产无套无码av电影| 亚洲人成网站观看在线观看| 色综合久久久久综合体桃花网| 91久久精品美女高潮不断| 六十路老熟妇乱子伦视频| 久久精品国产中文字幕| 亚洲成亚洲成网| 色猫咪av在线网址| 久久婷婷综合色丁香五月| 国产av精品一区二区三区| 中文字幕av无码免费一区| 97se亚洲综合自在线| 麻豆一区二区三区香蕉视频| 成人网站免费观看永久视频下载 | 久久96热在精品国产高清| 精品国产中文字幕av| 52熟女露脸国语对白视频| 亚洲精品香蕉一区二区| 欧美激情一区二区三区成人| 亚洲中文字幕日产无码成人片| 国产99青青成人A在线| 免费观看欧美猛交视频黑人|