一、方案名称:
基于Colibri_GD32F207+盖革计数器的简易核辐射监测系统
二、方案介绍:
生活中的建筑材料或多或少都有核辐射。如建筑上用的花岗岩就含有微量的铀,潜在的影响着人们的生活和寿命。所以需要对建筑材料中的核辐射予以测量从而判断是否危险。目前使用单片机方案对核辐射进行检测在很多情况下有应用,虽然原理简单,但是在生活中十分有用的。同样可以应用到其他很多的场合,对人们的日常生活是十分有帮助的。 本设计基于Colibri_GD32F207+盖革计数器,利用盖革计数器测量得到的当前核辐射量以及盖革计数器特性曲线,综合SPI协议与LCD彩屏驱动算法设计核辐射显示算法将当前核辐射量显示出来并提示当前核辐射是否安全。整个系统简洁易随身携带,可用于生活乃至其他很多场合的核辐射测量与预警。
三、方案结构框图: 见下图
方案框图
四、设计应用描述及心得总结: 1.首先,初识这块开发板得从点亮LED灯开始,程序编写不算难,但是在下载程序时,Colibri_GD32F207这个板子没有将BOOT0和BOOT1接出来,于是只能使用稳压器旁边的那个USB口进行调试。还好能用,板子上还引出了6个ADC接口,比较实在,使用其中一个ADC接口将采集到的核辐射数据输入进MCU中进行处理即可。 2.然后,此参赛项目需要将当前核辐射量显示出来,所以需要LCD屏幕。然而同样GD32F207芯片是带有LCD 的接口的,但是小红板没有将这部分的IO全部引出来,所以购买一个使用SPI协议驱动的1.8寸彩色LCD。使用片上硬件SPI或者模拟SPI都可以使得这款LCD屏幕正常工作。那么这样可以节省很多的 IO,故建议接下来的开发板中将LCD接口IO全部引出或者将硬件SPI单独设立相应LCD接口引出从而方便开发者参与调试。
3.接着,本设计发挥了GD32F207的最大的速度,主频配置了120MHZ。有效刷新当前的核辐射数值,有效保证了数据实时更新
4.进而在本设计采用M4011盖格管以及对应的盖革计数器硬件电路。硬件电路设计较为简单,能够测量当下的空间中20mR/h~120mR/h的γ射线及100~1800脱变数/分·厘米2的软β射线的辐射量。辐射当量显示并提示的设计算法基于M4011盖格管的特性曲线。再在实际调试中做了些许参数的修正。
5.在软件算法中,本设计中核辐射的参数换算基于1990年的我国所采用的国际标准,能够有效并实时更新当下的核辐射值并做出判断是否安全,搭配5V充电宝进行电源供电,可以随身携带,可自由测量各处的核辐射值。
6.安利一个小工具keilkill,因为在编译产生hex文件的过程中会产生很多杂乱的小文件(如左图),非常占用空间,故直接双击此keilkill,将hex文件之外的杂乱文件一并删除(删除后的效果如右图)。可以看到明显清理出了很多空间。我在进行竞赛项目开发中就在用此款小工具,效果非常好。
左图
右图
7.总结一下,在对竞赛项目开发的过程中,我发现本款小红板的背面标有引脚定义的字样顺序有误,应该是外侧引脚对应外部文字说明,内部引脚对应内部文字说明,从大赛官方下载得到的引脚说明的相应图解也有同样的问题。并且发现GDLINK_SWD与MCU_SWD的背面引脚注释印倒了,应该做一次映射。还有就是小红板上并没有将所有引脚引出来,从而很多功能无法实现。通过对竞赛计划项目的开发,我意识到这款MCU功能十分强大,为充分展现其全部功能,我建议GD32再出开发板时将所有引脚引出并合理布局,将boot0和boot1引出来,所有引脚加上正确的文字注释。再加上丰富的外设模块,如以太网,LCD,GSM,蓝牙,NRF24L01等等,同时丰富相应的库函数并推出操作寄存器的相应代码。必能做到非常有效的推广,广大开发者也会十分喜欢的。爱板网发帖模块的“从word粘贴内容”无法将文字准确全部粘贴进发帖框,望修改此bug。最后非常感谢GD的这次比赛能够使我了解这样一款国产MCU,让这个还处于大学生状态的我学到了不少知识,从中受益良多,为接下来的单片机开发之路积攒了不少宝贵的经验。
五、作品实物图+视频: 实物照片如下图,从左到右依次是LCD,小红板,盖革计数器
作品
下图这是在LCD上显示当前的辐射值 以及当前的辐射是否安全。
显示当量
可以看出,当前辐射量为0.12uSv/h,为安全值。
视频实在传不上去,就发一个使用盖革计数器进行核辐射检测的视频链接吧。 链接: 六、方案代码+BOM: 我在这里采用附件形式上传。 附件中包含 1:项目方案的整个代码工程,使用MDK5编译环境 2:盖革计数器的硬件原理图和PCB 图纸 3:前边安利的小工具keilkill 4:此竞赛项目的详细BOM物料表 5:利用盖革计数器测量核辐射的原理等参考文献 |