色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

離心泵工況診斷系統的整體嵌入式架構設計

9GxC_IoTMaker ? 來源:機智云開發者 ? 作者:機智云開發者 ? 2022-09-28 17:14 ? 次閱讀
傳統的離心泵工況診斷方法,傳感器安裝不便,診斷成本較高,實際應用困難。本文由開發者對通過離心泵工況的機理進行了研究,并設計研發了相應的離心泵工況診斷系統,從系統功能實現,系統硬件總體設計,系統軟件總體設計三方面對離心泵工況診斷系統的整體嵌入式架構進行了設計。01系統功能實現 1、能夠對離心泵驅動電機各相輸入電流進行頻譜繪制。系統能向操作人員實時展示離心泵驅動電機各相輸入電流在 0~650Hz頻帶內的頻譜。2、能夠對各項離心泵工況診斷指標進行準確計算。系統能對離心泵驅動電機定子電流均方根指標、脈沖因子指標等多項工況診斷指標進行實時計算。同時,系統應能夠對離心泵驅動電機輸入功率、電網工頻進行實時監測。并對各項參數的計算及監測誤差控制在低于1.8%的閾值內。3、實現信息交互。系統下位機應能夠與 TFTLCD 屏以及移動端離心泵工況診斷 APP 兩個平臺之間進行診斷信息交互。02 系統硬件設計 根據系統的功能設計指標,本文在系統硬件上設計了 MCU 核心控制模塊、AD 采集模塊、三相電參數監測模塊、內存擴展模塊、數據存儲模塊、信息交互模塊、系統供電電源模塊共計 7 大功能模塊,系統總體框架圖如圖所示。

其中系統信息交互模塊實現了系統診斷信息的實時傳輸與共享,包括屏顯模塊、云端通信模塊兩部分。通過信息交互模塊,診斷信息被分別發送至了下位機端和移動端APP,操作人員可以根據需要自行選擇是進行現場診斷還是進行遠程診斷。信息交互模塊的功能框架圖如下所示:

af3ee708-3eea-11ed-9e49-dac502259ad0.png

屏顯模塊,負責將診斷信息直接呈現在顯示屏上。基于機智云平臺設計的云端通信模塊,則負責將診斷信息通過機智云服務器發送至操作人員的移動 APP 上。云端通信模塊的功能框架如下所示:

af5c9a0a-3eea-11ed-9e49-dac502259ad0.png

WiFi模塊對系統計算所得的診斷信息進行封裝后傳至互聯網,并通過互聯網上傳至機智云服務器,移動端離心泵工況診斷 APP 通過與機智云服務器通信實時獲取離心泵的工況診斷信息。

云端通信模塊中的WiFi模塊負責系統的配置入網。WiFi模塊的性能對通信質量起著重要的影響作用。綜合考慮傳輸速率、距離、功耗和接受靈敏度這四方面因素,選用樂鑫 ESP8266WiFi 模組作為系統云端通信模塊的WiFi模塊,其原理圖和實物圖分別如下所示。

af895aae-3eea-11ed-9e49-dac502259ad0.png

b02a5dbe-3eea-11ed-9e49-dac502259ad0.png

離心泵工況診斷系統樣機的 PCB 設計圖和實物照片分別如下所示。

b05c1692-3eea-11ed-9e49-dac502259ad0.png

b13da468-3eea-11ed-9e49-dac502259ad0.png03 系統軟件總體設計 在軟件設計上,系統對電流信號的采集通過單片機ADC 功能,DMA 功能,通用定時器定時功能實現;系統對電流信號的時頻轉換和對診斷指標的計算通過單片機的 DSP 功能實現;三相電參數監測模塊與 MCU 核心控制模塊之間的信息交互通過單片機的 SPI 通信功能實現;診斷信息的人機交互通過單片機的 FSMC 驅動功能,ESP8266 芯片的 WIFI入網功能以及單片機的串口通信功能實現;系統內存的擴展通過單片機的 FSMC 驅動功能實現;診斷信息的存儲通過單片機的 SDIO 驅動功能實現。 系統初始化在對 MCU 核心控制模塊進行復位操作后,程序將從 main 函數出發,首先執行延時函數初始化,單片機 GPIO 引腳初始化,中斷嵌套初始化,串口初始化操作,然后依照HARDWARE 中的子文件,依次完成對 AD 采集模塊,三相電參數監測模塊,內存擴展模塊,數據存儲模塊,信息交互模塊的初始化操作,最后完成對 FFT 運算相關參數的初始化,系統初始化程序的邏輯實現流程如下:b1d4f098-3eea-11ed-9e49-dac502259ad0.png ?信息交互開發

信息交互程序包括兩方面,一是屏顯模塊的信息顯示程序,二是系統下位機與移動 APP之間的通信程序。屏顯模塊的信息顯示程序較簡單,MCU 核心控制模塊將屏顯模塊視為外部 SRAM 設備,通過 FSMC 對其進行驅動,完成顯示。離心泵工況診斷系統的屏顯界面如下所示:

b20f89e2-3eea-11ed-9e49-dac502259ad0.png ?平臺交互開發系統與移動 APP 之間的遠程通信是基于第三方云端服務器實現的,系統通過 WiFi 模塊接入互聯網后,借助于第三方云端服務器與移動端 APP 之間進行數據傳遞。可以理解為系統在下位機端、云端、移動端三者之間構筑了一個相對完整的物聯網信息交互框架。

由于機智云平臺可以為用戶提供從設備接入到產品運營管理的整個生命周期的服務。本文選用機智云作為系統云端通信的開發平臺。基于機智云服務器的云端通信框架示意圖如下所示:

b2821192-3eea-11ed-9e49-dac502259ad0.png云端通信是在設備端、云端、移動客戶端三者之間進行的。設備端即診斷系統下位機,在軟件上,設備端的云端通信功能要通過 GAgent 應用程序實現。GAgent 是為設備端接入機智云提供的嵌入式固件系統。在離心泵工況診斷系統中,GAgent 在 ATK-ESP8266 WiFi模塊上運行,負責在設備端、云端、移動客戶端三者之間搭建以數據點為媒介的信息交互橋梁。在軟件上,移動客戶端基于 SDK 環境建立了與云端及設備端通信的 API 接口設備端與云端,移動客戶端與云端之間傳輸的信息被封裝成數據點格式,而 MCU 核心控制模塊在云端通信過程中主要負責數據點與系統實際動作之間的對應轉換。三端協同工作,確保了物聯網中的信息通暢。移動客戶端和設備端之間借助機智云平臺進行通信。

云端通信的具體開發步驟如下:

?創建產品在機智云開發者中心官網中選擇“創建新產品”,并完成產品的屬性配置。具體地,本文在開發過程中,根據診斷系統的應用領域選擇產品分類為“安防,監控”類,將產品名稱命名為“離心泵工況診斷系統 V1”,選擇技術方案類型為 WIFI/移動網絡方案,選擇通訊方式為 WIFI,選擇數據傳輸方式為定長。

?創建數據點數據點即設備產品功能的抽象。根據系統功能設計要求,分別建立采樣頻率、電網工頻、電機輸入功率、離心泵驅動電機定子電流均方根指標、脈沖因子指標、峭度系數指標、總諧波失真指標、信噪比指標、信納比指標共 9 項只讀數值類型的數據點,用于顯示診斷信息。建立缺相報警這一項布爾值類型的數據點,用于離心泵驅動電機某相斷路時報警。

?協議添加生成并下載 MCU 開發代碼包。并在項目工程模板中添加 Gizwits 工程協議文檔。b2a13f90-3eea-11ed-9e49-dac502259ad0.png

?程序改寫:于機智云官網生成的 MCU 代碼包,對程序進行改寫,將系統計算出的指標值賦給對應數據點。

?固件燒錄:將 GAgent 固件燒寫進 ATK-ESP8266 WIFI 模塊中。具體燒錄過程見:

http://docs.gizwits.com/zh-cn/deviceDev/ESP8266%E4%B8%B2%E5%8F%A3%E7%83%A7%E5%86%99%E8%AF%B4%E6%98%8E.html

?基于 Android Studio 環境,對機智云提供的 APP 開源框架進行個性化修改,最后生成的移動客戶端界面。

?建立通信:操作 ATK-ESP8266 WIFI 模塊進入 Airlink 模式下配網,綁定設備,進行對接通信測試,完成云端通信的所有配置。

系統APP界面圖如下:

b2c8b2d2-3eea-11ed-9e49-dac502259ad0.png離泵工況診斷的功能實現代碼如下:
//ADC 參數配置:voidADC_Config(void){ GPIO_InitTypeDefGPIO_InitStructure;ADC_CommonInitTypeDefADC_CommonInitStructure;ADC_InitTypeDefADC_InitStructure;
RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA,ENABLE);RCC_APB2PeriphClockCmd(RCC_APB2Periph_ADC1,ENABLE); GPIO_InitStructureGPIO_Pin = GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3;   GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AN;    GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_NOPULL;    GPIO_Init(GPIOA, &GPIO_InitStructure); 
   RCC_APB2PeriphResetCmd(RCC_APB2Periph_ADC1,ENABLE);    RCC_APB2PeriphResetCmd(RCC_APB2Periph_ADC1,DISABLE); 
   ADC_CommonInitStructure.ADC_Mode= ADC_Mode_Independent;    ADC_CommonInitStructure.ADC_TwoSamplingDelay = ADC_TwoSamplingDelay_5Cycles;    ADC_CommonInitStructure.ADC_DMAAccessMode =ADC_DMAAccessMode_Disabled;    ADC_CommonInitStructure.ADC_Prescaler= ADC_Prescaler_Div4;    ADC_CommonInit(&ADC_CommonInitStructure); 
   ADC_InitStructure.ADC_Resolution= ADC_Resolution_12b;    ADC_InitStructure.ADC_ScanConvMode= ENABLE;     ADC_InitStructure.ADC_ContinuousConvMode= DISABLE; 

   ADC_InitStructure.ADC_ExternalTrigConvEdge = ADC_ExternalTrigConvEdge_Rising;    ADC_InitStructure.ADC_ExternalTrigConv= ADC_ExternalTrigConv_T2_TRGO;    ADC_InitStructure.ADC_DataAlign= ADC_DataAlign_Right;    ADC_InitStructure.ADC_NbrOfConversion= 3;    ADC_Init(ADC1, &ADC_InitStructure); 
   ADC_RegularChannelConfig(ADC1, ADC_Channel_1, 1, ADC_SampleTime_480Cycles);      ADC_RegularChannelConfig(ADC1, ADC_Channel_2, 2, ADC_SampleTime_480Cycles);    ADC_RegularChannelConfig(ADC1, ADC_Channel_3, 3, ADC_SampleTime_480Cycles);  
   ADC_DMARequestAfterLastTransferCmd(ADC1, ENABLE);    ADC_DMACmd(ADC1, ENABLE);    ADC_Cmd(ADC1, ENABLE); } 
  (2) 三相電參數監測模塊參數配置:  void EMU_init(int Phase,int Wire)   {   Write_Att7022(0xD3,0x0000);   //ATT7022E 復位   Write_Att7022(0xC3,0x000000);   //校表數據寄存器恢復到上電初始值 Write_Att7022(0xC9,0x00005A);//使能SPI校表寫操作Write_Att7022(0x01,0xB97E);//模式配置寄存器設置  Write_Att7022(0x03,0xF884);   //EMU 單元配置   Write_Att7022(0x02,0x0100);   //ADC 增益配置寄存器配置   Write_Att7022(0x31,0x3437);   //模擬模塊寄存器使能   Write_Att7022(0x6D, 0xFF00);   // Vrefgain 補償曲線系數 TCcoffA 設置   Write_Att7022(0x6E, 0x0DB8);   // Vrefgain 補償曲線系數 TCcoffB 設置   Write_Att7022(0x6F, 0xD1DA);   // Vrefgain 補償曲線系數 TCcoffC 設置   Write_Att7022(0x1E,HFCONST);   //HFconst 3200   Write_Att7022(0x17,(int)ATT_U_JIAOZHENG(0x0D,228.6));   //A 相電壓增益校準  Write_Att7022(0x18,(int)ATT_U_JIAOZHENG(0x0E,228.6));   //B 相電壓增益校準   Write_Att7022(0x19,(int)ATT_U_JIAOZHENG(0x0F,229.7));   //C 相電壓增益校準   Write_Att7022(0x1A,(int)ATT_I_JIAOZHENG(0x10,1.568));   //A 相電流增益校準   Write_Att7022(0x1B,(int)ATT_I_JIAOZHENG(0x11,1.568));   //B 相電流增益校準   Write_Att7022(0x1C,(int)ATT_I_JIAOZHENG(0x12,1.568));   //C 相電流增益校準   Write_Att7022(0x04,(int)ATT_P_JIAOZHENG(0x01,358.448));   //A 相有功功率增益校準   Write_Att7022(0x07,(int)ATT_P_JIAOZHENG(0x01,358.448));   //A 相無功功率增益校準   Write_Att7022(0x0A,(int)ATT_P_JIAOZHENG(0x01,358.448));   //A 相視在功率增益校準   Write_Att7022(0x05,(int)ATT_P_JIAOZHENG(0x02,358.448));   //B 相有功功率增益校準   Write_Att7022(0x08,(int)ATT_P_JIAOZHENG(0x02,358.448));   //B 相無功功率增益校準   Write_Att7022(0x0B,(int)ATT_P_JIAOZHENG(0x02,358.448));   //B 相視在功率增益校準   Write_Att7022(0x06,(int)ATT_P_JIAOZHENG(0x03,358.448));   //C 相有功功率增益校準  Write_Att7022(0x09,(int)ATT_P_JIAOZHENG(0x03,358.448));   //C 相無功功率增益校準  Write_Att7022(0x0C,(int)ATT_P_JIAOZHENG(0x03,358.448));   //C 相視在功率增益校準   
   if (Phase==3 && Wire==3){   //SEL 選擇      Write_Att7022(0x35,0x080E);   //IO 狀態寄存器配置    }    else if(Phase==3 && Wire==4){      Write_Att7022(0x35,0x080F);    }     Write_Att7022(0xC5,0x0002);   //打開同步   Write_Att7022(0xC9,0x000000);   //關閉 SPI 校表寫操作       } 
  (3) main.c 文件相關程序:  //頻譜繪制,帶寬 430Hz   void Frequency_Spectrum(float32_t * arry,float32_t x,uint16_t n){      uint16_t i;   float power;   for(i=0;i<430;i++){   if(*(arry+i)/x==1){   *(arry+i)=1;      }   POINT_COLOR = BLACK;   LCD_DrawLine(15+i,200+208*n,15+i,200+208*n-(*(arry+i))*180);   }    POINT_COLOR = BLUE;      LCD_ShowString(330,20+208*n,120,12,12,"Freq(Hz)    Power(dB)");   for(i=0;i<8;i++){   power=10*log10(RMSharmonic[i]*RMSharmonic[i]);   LCD_ShowFloatNum(330,32+208*n+12*i,harmonic_frequency[i],2,12,0);   if(power>0){   LCD_ShowFloatNum(396,32+208*n+12*i,power,2,12,0);   }   else{   LCD_ShowString(390,32+208*n+12*i,6,12,12,"-");   LCD_ShowFloatNum(396,32+208*n+12*i,(-power),2,12,0);   }   }   } 
  //頻域診斷指標計算   void Frequency_OperationIndicator(float32_t * arry,uint16_t n)   {    uint16_t i;   float32_t current_power;   float32_t fundamental_power;   float32_t harmonic_power;   float32_t sqrt_harmonic_power;    for(i=0;i<(FFT_LENGTH/2+1);i++){      if(i==0)     amplitude[i]=(*(arry+i)/FFT_LENGTH)* 4.39f;   //直流分量幅值還原,頻譜修正      else     amplitude[i]=(*(arry+i)*2/FFT_LENGTH) *4.39f;   //交流分量幅值還原,頻譜修正   } 
  arm_max_f32(amplitude,2049,harmonic,harmonic_frequency);   //基波基頻   RMSharmonic[0]=harmonic[0]/1.4142135623731f; 
  for(i=2;i<11;i++){   arm_max_f32((amplitude+i*harmonic_frequency[0]-1),2,harmonic+i-1,harmonic_frequency  +i-1);   //10 次以內諧波   *(harmonic_frequency+i-1)=*(harmonic_frequency+i-1)+i*harmonic_frequency[0]-1;/諧頻   RMSharmonic[i-1]=harmonic[i-1]/1.4142135623731f; }   current_power=square(RMS[n],2);    //信號總功率   fundamental_power=square(RMSharmonic[0],2);//基波功率  arm_power_f32(RMSharmonic+1,9,&harmonic_power);   //諧波功率   arm_sqrt_f32(harmonic_power,&sqrt_harmonic_power);   THD[n]=sqrt_harmonic_power/RMSharmonic[0];   //總諧波失真指標計算   SNR[n]=(fundamental_power+harmonic_power)/(current_power-fundamental_power-harmon  ic_power);      SINAD[n]=current_power/(current_power-fundamental_power);   arm_sqrt_f32(SNR[n],SNR+n);   //信噪比指標計算   arm_sqrt_f32(SINAD[n],SINAD+n);   //信納比指標計算   THD[n]=20*log10(THD[n]);   //dB 換算   SNR[n]=20*log10(SNR[n]);   //dB 換算   SINAD[n]=20*log10(SINAD[n]);  //dB 換算   Frequency_Spectrum(amplitude,harmonic[0],n); } 
  //時域診斷指標計算   void Time_OperationIndicator(float32_t * arry,uint16_t n)   {   uint32_t i;   uint32_t imax;     float32_t max;      float32_t mean;   //平均值   float32_t meanabs;   //整流平均值      float32_t meansqrt;   //算術平方根的平均值   float32_t squaremeansqrt;   //方根幅值 
     arm_max_f32(arry,4096,&max,&imax);   //峰值計算   arm_mean_f32(arry,4096,&mean);   //平均值計算   arm_abs_f32(arry,arry,4096);   //絕對值計算   for(i=0;i<4096;i++){   KURTOSIS[n]=KURTOSIS[n]+square((*(arry+i)-mean),4);   }      KURTOSIS[n]=KURTOSIS[n]/4096;    KURTOSIS[n]=KURTOSIS[n]/square((*(RMS+n)),4);   //峭度系數指標計算   arm_mean_f32(arry,4096,&meanabs);   for(i=0;i<4096;i++){   arm_sqrt_f32(*(arry+i),(arry+i));      }   arm_mean_f32(arry,4096,&meansqrt);      squaremeansqrt=square(meansqrt,2);   PULSE[n]=max/meanabs;   //脈沖因子指標計算   MARGIN[n]=max/squaremeansqrt;   //裕度因子指標計算 } 
  //Gizwits 協議初始化   void Gizwits_Init(void)   {     TIM3_Int_Init(10-1,8400-1);   //1MS 系統定時     usart3_init(9600);      memset((uint8_t*)¤tDataPoint, 0, sizeof(dataPoint_t));   //設備狀態結構體初始化     gizwitsInit();   //緩沖區初始化   } 
  //機智云用戶自定義函數   void userHandle(void)   {   if(wifi_sta)   //WIFI 已連接   {            currentDataPoint.valueFe = Fe;     currentDataPoint.valuePin = Pin;     currentDataPoint.valueTHD = THD[3];   currentDataPoint.valueSNR = SNR[3];     currentDataPoint.valueSINAD = SINAD[3];     currentDataPoint.valueCf = PULSE[3];     currentDataPoint.valueCq = KURTOSIS[3];     currentDataPoint.valueCe = MARGIN[3];     currentDataPoint.valueFs = Fs;   }   } 
  //主函數   int main(void) {      uint16_t n;        int key;     arm_cfft_radix4_instance_f32 scfft;     NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);    //系統中斷優先級分組     delay_init(168);   //延時函數初始化     uart_init(115200);   //初始化串口        KEY_Init();   //按鍵初始化     Gizwits_Init();   //機智云協議初始化     TIM2_Int_Init();   //通用定時器 2 初始化        ADC_Config();   //ADC 參數配置     DMA_Config();   //DMA 參數配置        LCD_Init();   //LCD 初始化     FSMC_SRAM_Init();   //外部 SRAM 初始化          arm_cfft_radix4_init_f32(&scfft,FFT_LENGTH,0,1);   //初始化 scfft 結構體,設定 FFT 參       Screen_diaplay();   //界面顯示        EMU_init(3,4);   //三相電參數監測模塊初始化        while (1)        {          if(flag_dma==1)     {     arm_rms_f32(ADC_Con_A[n],4096,RMS+0);    //A 相輸入電流均方根指標計算        arm_rms_f32(ADC_Con_B[n],4096,RMS+1);    //B 相輸入電流均方根指標計算        arm_rms_f32(ADC_Con_C[n],4096,RMS+2);    //C 相輸入電流均方根指標計算        //復數構造     for(n=0;n         fft_inputbuf[0][2*n]=ADC_Con_A[n]* Kaiser [n];          fft_inputbuf[0][2*n+1]=0;           fft_inputbuf[1][2*n]=ADC_Con_B[n]*Kaiser[n];       fft_inputbuf[1][2*n+1]=0;            fft_inputbuf[2][2*n]=ADC_Con_C[n]* Kaiser [n];          fft_inputbuf[2][2*n+1]=0;             }   arm_cfft_radix4_f32(&scfft,fft_inputbuf[0]);   //FFT 計算(基 4)   arm_cmplx_mag_f32(fft_inputbuf[0],fft_outputbufA,FFT_LENGTH);   //復數求模   arm_cfft_radix4_f32(&scfft,fft_inputbuf[1]);   arm_cmplx_mag_f32(fft_inputbuf[1],fft_outputbufB,FFT_LENGTH);    arm_cfft_radix4_f32(&scfft,fft_inputbuf[2]);   arm_cmplx_mag_f32(fft_inputbuf[2],fft_outputbufC,FFT_LENGTH);   
  Frequency_OperationIndicator(fft_outputbufA,0);   //頻域診斷指標計算   Frequency_OperationIndicator(fft_outputbufB,1);   Frequency_OperationIndicator(fft_outputbufC,2);   Time_OperationIndicator(ADC_Con_A,0);   //時域診斷指標計算   Time_OperationIndicator(ADC_Con_B,1);   Time_OperationIndicator(ADC_Con_C,2); 
     //合相診斷指標計算   RMS[3]=(RMS[0]+RMS[1]+RMS[2])/3;        PULSE[3]=(PULSE[0]+PULSE[1]+PULSE[2])/3;           MARGIN[3]=(MARGIN[0]+MARGIN[1]+MARGIN[2])/3;          KURTOSIS[3]=(KURTOSIS[0]+KURTOSIS[1]+KURTOSIS[2])/3;       THD[3]=(THD[0]+THD[1]+THD[2])/3;   SNR[3]=(SNR[0]+SNR[1]+SNR[2])/3;     SINAD[3]=(SINAD[0]+SINAD[1]+SINAD[2])/3;   Fe=ReadSARegister(0x1C)/8192;   //電網工頻   Pin=Calculate_S(HXPhase)*2;   //電機輸入功率 
  LCD_ShowFloatNum(65,640,Fs,0,16,0); LCD_ShowFloatNum(65,665,F0,0,16,0);   LCD_ShowFloatNum(65,690,Fe,2,16,0);   LCD_ShowString(97,715,8,16,16,"-");   LCD_ShowFloatNum(105,715,-THD[3],2,16,0);   LCD_ShowFloatNum(97,740,SNR[3],2,16,0);   LCD_ShowFloatNum(113,765,SINAD[3],2,16,0);   LCD_ShowFloatNum(352,640,RMS[3],2,16,0);   LCD_ShowFloatNum(344,665,PULSE[3],2,16,0);   LCD_ShowFloatNum(344,690,KURTOSIS[3],2,16,0);   LCD_ShowFloatNum(344,715,MARGIN[3],2,16,0);   LCD_ShowFloatNum(312,740,P,2,16,0); 
  userHandle();   //機智云協議用戶操作   gizwitsHandle((dataPoint_t *)¤tDataPoint);   //機智云協議處理   key = KEY_Scan(0);   if(key==KEY1_PRES)   //KEY1 按鍵按下   {   printf("WIFI 進入 Airlink 連接模式
");      gizwitsSetMode(WIFI_AIRLINK_MODE);   //Airlink 模式接入   }     if(key==WKUP_PRES)   //KEY_UP 按鍵按下   {        printf("WIFI 復位,以重新配置連接
");      gizwitsSetMode(WIFI_RESET_MODE);   //WIFI 復位   }   }   }    }
04 系統總結

綜合離心泵工況診斷的功能需求和硬件架構,本文從系統初始化、信息交互等方面對系統的功能實現程序進行了設計,基于機智云物聯網云平臺實現了電流信號的實時采集,診斷指標的實時計算,電流頻譜的實時顯示,電機功率的實時監測以及系統下位機與屏顯模塊、移動端 APP 兩個平臺之間的信息交互。

實物工作情況圖如下:

b31f4408-3eea-11ed-9e49-dac502259ad0.png

審核編輯:彭靜

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 傳感器
    +關注

    關注

    2550

    文章

    51035

    瀏覽量

    753077
  • 嵌入式
    +關注

    關注

    5082

    文章

    19104

    瀏覽量

    304815
  • 驅動電機
    +關注

    關注

    9

    文章

    409

    瀏覽量

    30717
  • 離心泵
    +關注

    關注

    0

    文章

    30

    瀏覽量

    3085

原文標題:基于物聯網云平臺的離心泵工況診斷系統

文章出處:【微信號:IoTMaker,微信公眾號:機智云開發者】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    離心泵的四種主流節能技術分析

    `離心泵和節能技術離心泵主要是由機殼、葉輪、吸入及壓出導管以及密封件等組成,最大優點在于結構簡單、體積小、操作維護方便以及工作效率高等。多級離心泵多級離心泵是將具有同樣功能的兩個以上的
    發表于 09-24 10:49

    離心泵特性曲線測定ppt

    一、實驗目的1. 了解離心泵結構與特性,學會離心泵的操作;2. 掌握離心泵特性曲線測定方法。 3. 掌握手動閥門調節離心泵流量和上位監控計算機智能調節
    發表于 07-14 15:29 ?0次下載

    船用離心泵的自吸ppt

    離心泵沒有自吸能力但壓載、艙底、日用海水和淡水泵、油輪掃艙等都需要自吸船用離心泵實現自吸的方法有三類自吸離心泵采用特殊的
    發表于 07-14 15:32 ?0次下載

    離心泵講義ppt

    離心泵(Centrifugal? Pump)-主要內容:??????? 1、離心泵的結構??????? 2、離心泵的理論計算?????&nb
    發表于 07-16 11:03 ?0次下載

    離心泵特性曲線的測定

    離心泵特性曲線的測定一、實驗目的1. 了解離心泵構造,熟悉離心泵的操作方法;2. 掌握離心泵特性曲線的測定方法、表示方法,加深對離心泵性能的
    發表于 07-19 09:12 ?35次下載

    離心泵工作原理

    離心泵的工作原理:離心泵是利用葉輪旋轉而使水產生離心力來工作的。如下圖。
    發表于 07-14 14:42 ?1.8w次閱讀
    <b class='flag-5'>離心泵</b>工作原理

    離心泵抽水裝置

    離心泵抽水裝置
    發表于 07-14 14:45 ?2229次閱讀
    <b class='flag-5'>離心泵</b>抽水裝置

    離心泵的結構圖

    離心泵的結構圖 導葉溫柔流
    發表于 07-14 15:27 ?1.1w次閱讀
    <b class='flag-5'>離心泵</b>的結構圖

    離心泵的工作原理

    離心泵是利用葉輪旋轉而使水產生的離心力來工作的。離心泵在啟動前,必須使殼和吸水管內充滿水,然后啟動電機,使軸帶動葉輪和水做高速旋轉運動,
    的頭像 發表于 10-29 16:20 ?29.5w次閱讀

    離心泵結構組成圖解

    離心泵的基本構造離心泵的種類有很多,如圖所示為單級單吸離心泵的基本構造,主要包括蝸殼形的殼、
    的頭像 發表于 10-29 16:24 ?13.9w次閱讀

    離心泵的密封方式_離心泵的主要參數

    本文主要介紹了離心泵的密封方式及離心泵的主要參數。離心泵的密封主要包括機械密封、填料函密封及彈性材料密封的常用設計方法。
    發表于 04-29 10:45 ?6995次閱讀

    離心泵的使用特點_離心泵的使用方法

    本文首先介紹了離心泵的使用特點,其次介紹了離心泵的使用方法,最后闡述了離心泵的維護要點。
    發表于 04-29 10:57 ?5258次閱讀

    離心泵的選擇_離心泵選型的基本數據

    本文主要闡述了離心泵的選用方法。根據被輸送液體的性質確定的類型。
    發表于 04-29 11:06 ?5562次閱讀

    離心泵有哪些主要部件組成_離心泵有效功率計算公式

    本文主要闡述了離心泵的主要部件組成及離心泵有效功率計算公式。
    發表于 04-29 11:10 ?1.3w次閱讀

    基于物聯網云平臺的離心泵工況診斷系統

    軟件總體設計三方面對離心泵工況診斷系統整體嵌入式架構進行了設計。01
    的頭像 發表于 09-29 10:11 ?634次閱讀
    基于物聯網云平臺的<b class='flag-5'>離心泵</b><b class='flag-5'>工況</b><b class='flag-5'>診斷系統</b>
    主站蜘蛛池模板: aaa在线观看视频高清视频| 小草影院免费| 高清国语自产拍免费| 无人区国产片| 国内一级一级毛片a免费| 一个人免费视频在线观看高清频道 | 免费亚洲视频| WWW污污污抽搐喷潮COM| 色播成人影院| 国产手机在线亚洲精品观看| 亚洲色视在线观看视频| 考试考90就可以晚上和老师C| 99这里只有是精品2| 色狐直播免费观看| 国产在线精品视频二区| 在线观看视频中文字幕| 女人操男人| 国产精品久久久久久久AV下载| 亚洲国产免费观看视频| 久久这里只有精品2| 草莓在线观看| 亚洲AV色香蕉一区二区9255| 久久久96人妻无码精品蜜桃| jk白丝袜美女被男人桶| 午夜色情影院色a国产| 久久视频精品3线视频在线观看| bbw极度另类孕妇| 午夜理伦片免费| 久久日本片精品AAAAA国产| 百性阁综合社区| 亚洲H成年动漫在线观看不卡| 久久综合色视频| 岛国大片在线观看完整版| 亚洲欧美一级久久精品| 欧美 亚洲综合在线一区| 国产AV高清怡春院| 尤物yw193can入口| 人妻少妇69式99偷拍| 国内精品久久人妻无码HD浪潮| 5G年龄确认我已满18免费| 神马电影dy888午夜我不卡|