2021-08-22 15:19:20 索煒達(dá)電子 1029
項(xiàng)目編號(hào):E425
文件大?。?1M
源碼說(shuō)明:帶中文注釋
開發(fā)環(huán)境:C編譯器
簡(jiǎn)要概述
1.項(xiàng)目情景(Situation): 在完成日常項(xiàng)目任務(wù)的過(guò)程中,發(fā)現(xiàn)需要對(duì)溶液的電導(dǎo)率參數(shù)進(jìn)行測(cè)量。經(jīng)過(guò)查找后發(fā)現(xiàn)市面上的儀器多為食品級(jí),工業(yè)級(jí)的較少且價(jià)格昂貴。因此決定自行制作。
2.預(yù)期目標(biāo)(Target): 制作一款輕量級(jí),簡(jiǎn)易化,成本低的工業(yè)級(jí)電導(dǎo)率測(cè)量?jī)x。能夠檢測(cè)項(xiàng)目實(shí)驗(yàn)過(guò)程中的溶液電導(dǎo)率,順利收集數(shù)據(jù),完成實(shí)驗(yàn)。
3.具體行動(dòng)(Action): 鑒于已有一款STM32單片機(jī),因此決定已現(xiàn)有單片機(jī)為基礎(chǔ),添加適當(dāng)模塊,完成制作。 本方案基于ST公司的STM32F429芯片,外接電導(dǎo)率信號(hào)處理模塊。通過(guò)電導(dǎo)率傳感器和溫度傳感器采集數(shù)據(jù),對(duì)采集的數(shù)據(jù)通過(guò)算法處理得到最終結(jié)果。 將實(shí)驗(yàn)數(shù)據(jù)結(jié)果傳入LCD屏幕顯示及SD中保存,并通過(guò)觸摸屏完成人機(jī)交互。
具體分為硬件部分和軟件部分:
*硬件方案:
1). 由于溶液的濃差極化特性,需要設(shè)計(jì)正弦波發(fā)生模塊,使用正弦波驅(qū)動(dòng)電導(dǎo)率傳感器,得到合適的數(shù)據(jù);
2). 對(duì)正弦波模塊產(chǎn)生的數(shù)字信號(hào)進(jìn)行處理,為此設(shè)計(jì)了濾波模塊;
3). 對(duì)電導(dǎo)率傳感器傳回的的數(shù)據(jù)進(jìn)行放大處理,以便達(dá)到ADC的要求,設(shè)計(jì)了放大處理模塊;
4). 由于3中的放大電路的相關(guān)芯片需要接入負(fù)電源,設(shè)計(jì)了電壓轉(zhuǎn)置模塊。
*軟件方案:
1). 編寫正弦波發(fā)生芯片的驅(qū)動(dòng)程序;
2). 編寫溫度傳感器的驅(qū)動(dòng)程序;
3). 編寫ADC程序;
4). 編寫LCD屏驅(qū)動(dòng)程序;
5). 編寫觸摸屏驅(qū)動(dòng)程序;
6).編寫SD卡驅(qū)動(dòng)程序;
7).編寫串口打印程序。
4.項(xiàng)目成果(Result):
項(xiàng)目成果設(shè)計(jì)出合適的電導(dǎo)率信號(hào)處理模塊電路板,并完成相應(yīng)的程序編寫。通過(guò)實(shí)際操作,能夠順利收集數(shù)據(jù),初步完成預(yù)期的測(cè)量任務(wù)。
目錄│文件列表:
└ ConductivityMeter
└ ConductivityMeter
└ ConductivityMeter
├ 1_HardWare
│ │ ElectricalConductivityMeter.PcbDoc
│ │ ElectricalConductivityMeter.PcbDoc.htm
│ │ ElectricalConductivityMeter.PrjPcb
│ │ readme.txt
│ ├ Library
│ │ │ Miscellaneous Connectors.IntLib
│ │ │ Miscellaneous Devices.IntLib
│ │ │ YuHunXP.PcbLib
│ │ │ YuHunXP.SchLib
│ │ └ Fszhang
│ │ │ Fszhang.IntLib
│ │ │ fszhang.PcbLib
│ │ └ fszhang.SchLib
│ ├ PackagingSchDoc
│ │ │ ElectricalConductivityMeter.SchDoc
│ │ │ Power-5V.SchDoc
│ │ │ Sensor.SchDoc
│ │ │ SinWaveAmplifier.SchDoc
│ │ │ SinWaveCreator.SchDoc
│ │ └ TopLayer.SchDoc
│ └ __Previews
│ │ ElectricalConductivityMeter.PcbDocPreview
│ │ Sheet1.SchDocPreview
│ │ TopLayer.SchDocPreview
│ │ 電導(dǎo)率儀.PcbDocPreview
│ └ 電導(dǎo)率儀.SchDocPreview
├ 2_SoftWare
│ │ Libraries.7z
│ │ readme.txt
│ ├ Project
│ │ └ RVMDK(uv5)
│ │ │ ConductivityMeter.uvguix.XuPeng
│ │ │ ConductivityMeter.uvoptx
│ │ │ ConductivityMeter.uvprojx
│ │ └ Output
│ │ │ ConductivityMeter.hex
│ │ │ ElectricalConductivityMeter.hex
│ │ └ Template.hex
│ └ User
│ │ main.c
│ │ main.c.orig
│ │ stm32f4xx_conf.h
│ │ stm32f4xx_it.c
│ │ stm32f4xx_it.h
│ └ BSP
│ │ bsp.c
│ │ bsp.h
│ ├ ad9850
│ │ │ bsp_ad9850.c
│ │ └ bsp_ad9850.h
│ ├ adc
│ │ │ bsp_adc.c
│ │ └ bsp_adc.h
│ ├ ds18b20
│ │ │ bsp_ds18b20.c
│ │ └ bsp_ds18b20.h
│ ├ FATFS
│ │ │ diskio.c
│ │ │ diskio.h
│ │ │ ff.c
│ │ │ ff.h
│ │ │ ffconf.h
│ │ │ integer.h
│ │ └ option
│ │ │ cc932.c
│ │ │ cc936.c
│ │ │ cc949.c
│ │ │ cc950.c
│ │ │ ccsbcs.c
│ │ │ syscall.c
│ │ └ unicode.c
│ ├ key
│ │ │ bsp_key_exti.c
│ │ └ bsp_key_exti.h
│ ├ led
│ │ │ bsp_led.c
│ │ └ bsp_led.h
│ ├ ltdc
│ │ ├ flash
│ │ │ │ bsp_spi_flash.c
│ │ │ └ bsp_spi_flash.h
│ │ ├ font
│ │ │ │ fonts.c
│ │ │ └ fonts.h
│ │ ├ lcd
│ │ │ │ bsp_lcd.c
│ │ │ └ bsp_lcd.h
│ │ └ sdram
│ │ │ bsp_sdram.c
│ │ └ bsp_sdram.h
│ ├ sdio
│ │ │ bsp_sdio_sd.c
│ │ │ bsp_sdio_sd.c.orig
│ │ │ bsp_sdio_sd.h
│ │ │ bsp_sdio_sd.h.orig
│ │ │ bsp_sd_write_read.c
│ │ │ bsp_sd_write_read.c.orig
│ │ └ bsp_sd_write_read.h
│ ├ tim
│ │ │ bsp_basic_tim.c
│ │ └ bsp_basic_tim.h
│ ├ touch
│ │ │ bsp_i2c_touch.c
│ │ │ bsp_i2c_touch.h
│ │ │ gt9xx.c
│ │ │ gt9xx.h
│ │ │ palette.c
│ │ └ palette.h
│ └ usart
│ │ bsp_debug_usart.c
│ └ bsp_debug_usart.h
└ 3_ProductionShow
│ 1_整體圖.jpg
│ 2_LCD屏幕.jpg
│ 3_電路板.jpg
│ 4_電導(dǎo)率傳感器與溫度傳感器.jpg
│ 5_串口數(shù)據(jù)打印.png
│ 6_數(shù)據(jù)記錄.txt
│ 7_PCB圖.png
└ 8_演示視頻.mp4