2021-08-16 11:37:55 索煒達(dá)電子 691
項(xiàng)目編號(hào):E172
文件大?。?.5M
源碼說(shuō)明:帶中文注釋
開發(fā)環(huán)境:C編譯器
簡(jiǎn)要概述:
本系統(tǒng)以STM32F103VET6為控制核心,采用D/A TLV5616控制運(yùn)放LM358驅(qū)動(dòng)N溝道增強(qiáng)型P-MOSFET CSD17505Q5A,通過(guò)負(fù)反饋實(shí)現(xiàn)直流電子負(fù)載的恒流工作模式。同時(shí)采用電流并聯(lián)檢測(cè)芯片INA282將電流反饋至MCU,通過(guò)A/D采樣檢測(cè)實(shí)際電流與D/A設(shè)定電流的差值,利用PID控制實(shí)現(xiàn)無(wú)凈差控制,提高了電流控制的精度。其中PID參數(shù)通過(guò)遺傳算法進(jìn)行自整定,預(yù)設(shè)了一組較優(yōu)PID參數(shù),在實(shí)際高精度測(cè)量中,也可以通過(guò)重新整定更新PID參數(shù)。系統(tǒng)工作電壓范圍0.2-18V,電壓分辨率為0.5mV,精度恒為±0.25mV,工作電流范圍0-1000mA,分辨率0.2mA,精度恒為±0.1mA,在滿足設(shè)計(jì)要求的情況下具備了很高的恒流精度。另外,通過(guò)對(duì)繼電器的控制,實(shí)現(xiàn)了過(guò)壓保護(hù)與自恢復(fù)功能,還具備聲光報(bào)警等實(shí)用功能。
在大功率的應(yīng)用需求中,本系統(tǒng)可以通過(guò)多個(gè)P-MOSFET并聯(lián)擴(kuò)流很方便的實(shí)現(xiàn)。同時(shí)在不改變電路的情況下,通過(guò)軟件更新還可實(shí)現(xiàn)直流電子負(fù)載的恒阻和恒功率方式運(yùn)行。
文件列表:
簡(jiǎn)要概述:
目錄│文件列表:
└ 簡(jiǎn)易直流電子負(fù)載
│ 流程圖.vsd
│ 電路設(shè)計(jì)圖.docx
│ 直流電子負(fù)載指導(dǎo)文檔.doc
├ GA_TRACE_V2.1
│ ├ APP
│ │ │ ADS1115.c
│ │ │ ADS115.h
│ │ │ bsp.c
│ │ │ bsp.h
│ │ │ filter.c
│ │ │ filter.h
│ │ │ GUI_Set.c
│ │ │ includes.h
│ │ │ inherit.c
│ │ │ inherit.h
│ │ │ JLink Regs CM3.txt
│ │ │ JLinkLog.txt
│ │ │ JLinkSettings.ini
│ │ │ main.c
│ │ │ pid.c
│ │ │ pid.h
│ │ │ SCA100.plg
│ │ │ SCA100.uvgui.DJC
│ │ │ SCA100.uvgui_DJC.bak
│ │ │ SCA100.uvopt
│ │ │ SCA100.uvproj
│ │ │ SCA100_GA_TEST.dep
│ │ │ SCA100_SCA100.dep
│ │ │ SCA100_Target 1.dep
│ │ │ SCA100_uvopt.bak
│ │ │ SCA100_uvproj.bak
│ │ │ SimSun_19.c
│ │ │ TLV5616.c
│ │ │ TLV5616.h
│ │ └ User_define.h
│ ├ BSP
│ │ │ ADS1115.c
│ │ │ ADS115.h
│ │ │ bsp.c
│ │ │ bsp.h
│ │ │ includes.h
│ │ │ SCA100.c
│ │ │ SCA100.h
│ │ │ stm32f10x_conf.h
│ │ │ TLV5616.c
│ │ └ TLV5616.h
│ ├ CM3
│ │ │ core_cm3.c
│ │ │ startup_stm32f10x_hd.s
│ │ └ system_stm32f10x.c
│ ├ font
│ │ │ F08_1.c
│ │ │ F08_ASCII.c
│ │ │ F10S_1.c
│ │ │ F10S_ASCII.c
│ │ │ F10_1.c
│ │ │ F10_ASCII.c
│ │ │ F13B_1.c
│ │ │ F13B_ASCII.c
│ │ │ F13HB_1.c
│ │ │ F13HB_ASCII.c
│ │ │ F13H_1.c
│ │ │ F13H_ASCII.c
│ │ │ F13_1.c
│ │ │ F13_ASCII.c
│ │ │ F16B_1.c
│ │ │ F16B_ASCII.c
│ │ │ F16_1.c
│ │ │ F16_1HK.c
│ │ │ F16_ASCII.c
│ │ │ F16_HK.c
│ │ │ F24B_1.c
│ │ │ F24B_ASCII.c
│ │ │ F24_1.c
│ │ │ F24_ASCII.c
│ │ │ F32B_1.c
│ │ │ F32B_ASCII.c
│ │ │ F32_1.c
│ │ │ F32_ASCII.c
│ │ │ F4x6.c
│ │ │ F6x8.c
│ │ │ F8x10_ASCII.c
│ │ │ F8x12_ASCII.c
│ │ │ F8x13_1.c
│ │ │ F8x13_ASCII.c
│ │ │ F8x15B_1.c
│ │ │ F8x15B_ASCII.c
│ │ │ F8x16.c
│ │ │ F8x8.c
│ │ │ FComic18B_1.c
│ │ │ FComic18B_ASCII.c
│ │ │ FComic24B_1.c
│ │ │ FComic24B_ASCII.c
│ │ │ FD24x32.c
│ │ │ FD32.c
│ │ │ FD36x48.c
│ │ │ FD48.c
│ │ │ FD48x64.c
│ │ │ FD60x80.c
│ │ │ FD64.c
│ │ │ FD80.c
│ │ └ SimHei_24.c
│ ├ FWlib
│ │ ├ inc
│ │ │ │ core_cm3.h
│ │ │ │ misc.h
│ │ │ │ stm32f10x.h
│ │ │ │ stm32f10x_adc.h
│ │ │ │ stm32f10x_bkp.h
│ │ │ │ stm32f10x_can.h
│ │ │ │ stm32f10x_cec.h
│ │ │ │ stm32f10x_crc.h
│ │ │ │ stm32f10x_dac.h
│ │ │ │ stm32f10x_dbgmcu.h
│ │ │ │ stm32f10x_dma.h
│ │ │ │ stm32f10x_exti.h
│ │ │ │ stm32f10x_flash.h
│ │ │ │ stm32f10x_fsmc.h
│ │ │ │ stm32f10x_gpio.h
│ │ │ │ stm32f10x_i2c.h
│ │ │ │ stm32f10x_iwdg.h
│ │ │ │ stm32f10x_pwr.h
│ │ │ │ stm32f10x_rcc.h
│ │ │ │ stm32f10x_rtc.h
│ │ │ │ stm32f10x_sdio.h
│ │ │ │ stm32f10x_spi.h
│ │ │ │ stm32f10x_tim.h
│ │ │ │ stm32f10x_usart.h
│ │ │ │ stm32f10x_wwdg.h
│ │ │ └ system_stm32f10x.h
│ │ └ SRC
│ │ │ misc.c
│ │ │ stm32f10x_adc.c
│ │ │ stm32f10x_bkp.c
│ │ │ stm32f10x_can.c
│ │ │ stm32f10x_cec.c
│ │ │ stm32f10x_crc.c
│ │ │ stm32f10x_dac.c
│ │ │ stm32f10x_dbgmcu.c
│ │ │ stm32f10x_dma.c
│ │ │ stm32f10x_exti.c
│ │ │ stm32f10x_flash.c
│ │ │ stm32f10x_fsmc.c
│ │ │ stm32f10x_gpio.c
│ │ │ stm32f10x_i2c.c
│ │ │ stm32f10x_iwdg.c
│ │ │ stm32f10x_pwr.c
│ │ │ stm32f10x_rcc.c
│ │ │ stm32f10x_rtc.c
│ │ │ stm32f10x_sdio.c
│ │ │ stm32f10x_spi.c
│ │ │ stm32f10x_tim.c
│ │ │ stm32f10x_usart.c
│ │ │ stm32f10x_wwdg.c
│ │ └ system_stm32f10x.c
│ ├ GUIinc
│ │ │ BUTTON.h
│ │ │ CHECKBOX.h
│ │ │ DIALOG.h
│ │ │ DIALOG_Intern.h
│ │ │ DROPDOWN.h
│ │ │ EDIT.h
│ │ │ FRAMEWIN.h
│ │ │ Global.h
│ │ │ GRAPH.h
│ │ │ GUI.h
│ │ │ GUIConf.h
│ │ │ GUIDRV_BitPlains.h
│ │ │ GUIDRV_Dist.h
│ │ │ GUIDRV_FlexColor.h
│ │ │ GUIDRV_Generic.h
│ │ │ GUIDRV_IST3088.h
│ │ │ GUIDRV_Lin.h
│ │ │ GUIDRV_NoOpt_1_8.h
│ │ │ GUIDRV_S1D13748.h
│ │ │ GUIDRV_S1D15G00.h
│ │ │ GUIDRV_SLin.h
│ │ │ GUIDRV_SPage.h
│ │ │ GUIDRV_SSD1926.h
│ │ │ GUIDRV_Template.h
│ │ │ GUI_ARRAY.h
│ │ │ GUI_ConfDefaults.h
│ │ │ GUI_Debug.h
│ │ │ GUI_FontIntern.h
│ │ │ GUI_HOOK.h
│ │ │ GUI_Private.h
│ │ │ GUI_SetOrientation.h
│ │ │ GUI_SetOrientationCX.h
│ │ │ GUI_Type.h
│ │ │ GUI_Version.h
│ │ │ GUI_VNC.h
│ │ │ HEADER.h
│ │ │ ICONVIEW.h
│ │ │ LCD.h
│ │ │ LCDConf.h
│ │ │ LCD_ConfDefaults.h
│ │ │ LCD_Private.h
│ │ │ LCD_Protected.h
│ │ │ LCD_SIM.h
│ │ │ LISTBOX.h
│ │ │ LISTVIEW.h
│ │ │ LISTWHEEL.h
│ │ │ MENU.h
│ │ │ MESSAGEBOX.h
│ │ │ MULTIEDIT.h
│ │ │ MULTIPAGE.h
│ │ │ PROGBAR.h
│ │ │ RADIO.h
│ │ │ SCROLLBAR.h
│ │ │ SLIDER.h
│ │ │ TEXT.h
│ │ │ TREEVIEW.h
│ │ │ WIDGET.h
│ │ │ WM.h
│ │ │ WM_GUI.h
│ │ └ WM_Intern.h
│ ├ GUILib
│ │ └ GUI_CM3.lib
│ ├ GUI_X
│ │ │ GUI_X.c
│ │ └ GUI_X_Touch.c
│ ├ IQMath_Lib
│ │ │ IQmathLib-cm3.lib
│ │ └ IQmathLib.h
│ ├ LCDDriver
│ │ │ GUIConf.c
│ │ │ LCDConf.c
│ │ │ Touch.c
│ │ └ Touch.h
│ └ OBJ_FLASH
│ └ SCA100.plg
└ 電路
│ 恒流電路.SchDoc
│ 采樣電路.SchDoc
└ History
│ 恒流電路.~(1).SchDoc.Zip
│ 恒流電路.~(10).SchDoc.Zip
│ 恒流電路.~(2).SchDoc.Zip
│ 恒流電路.~(3).SchDoc.Zip
│ 恒流電路.~(4).SchDoc.Zip
│ 恒流電路.~(5).SchDoc.Zip
│ 恒流電路.~(6).SchDoc.Zip
│ 恒流電路.~(7).SchDoc.Zip
│ 恒流電路.~(8).SchDoc.Zip
│ 恒流電路.~(9).SchDoc.Zip
│ 采樣電路.~(1).SchDoc.Zip
│ 采樣電路.~(11).SchDoc.Zip
│ 采樣電路.~(12).SchDoc.Zip
│ 采樣電路.~(2).SchDoc.Zip
│ 采樣電路.~(3).SchDoc.Zip
│ 采樣電路.~(4).SchDoc.Zip
│ 采樣電路.~(5).SchDoc.Zip
│ 采樣電路.~(6).SchDoc.Zip
│ 采樣電路.~(7).SchDoc.Zip
│ 采樣電路.~(8).SchDoc.Zip
└ 采樣電路.~(9).SchDoc.Zip