正常工作时,在盖革管两端加高电压,盖革管自身相当于断路。
当有高能粒子射入盖革管内时,粒子能量使管内气体电离放电,
盖革管负极输出一个脉冲信号。
该脉冲信号经过处理,驱动蜂鸣器输出‘哒哒’声,并由数字电路计数。
计数的基本单位为CPM,即为每分钟脉冲数,再根据盖革管数据表中的
转换系数,即可将CPM转换为辐射强度单位μSv。
Product images (SVG is not recommended here)
默认为高电平,盖革管产生信号时输出一个下拉脉冲,脉冲宽度约300μs。
CPM为每分钟脉冲计数,实际可以不计满一分钟,如计20秒有10脉冲,则10*(20/60)=30CPM
μSv/h为辐射强度单位,与CPM的关系为μSv/h=CPM/151,即CPM为30时,辐射强度为μSv/h=30/151=0.199
nSv/h为辐射强度单位,关系为1000nSv/h=1μSv/h
CPM | 描述 |
---|---|
40 | 自然环境基本辐射 |
400 | 高空飞行的客机外部辐射 |
800 | 切尔诺贝利核电站旁边 |
150000 | 核电站内部高辐射危险区 |
提供一个arduino库来获取盖革计数器数据
To use this library, first download the library file, paste it into the \Arduino\libraries directory, then open the examples folder and run the demo in the folder.
/*!
* @brief Constructor
* @param pin 外部中断引脚
*/
DFRobot_Geiger(int pin);
/*!
* @brief 开始计数,启用外部中断
*/
void start();
/*!
* @brief 暂停计数,关闭外部中断触发,CPM和辐射强度值保持在暂停前状态
*/
void pause();
/*!
* @brief 获取当前CPM,若已暂停,则CPM为暂停前最后数值
@return CPM值
*/
uint16_t getCPM();
/*!
* @brief 获取当前nSv/h,若已暂停,则nSv/h为暂停前最后数值
*/
uint16_t getnSvh();
/*!
* @brief 获取当前μSv/h,若已暂停,则μSv/h为暂停前最后数值
*/
float getuSvh();
/*!
* @brief 利用盖革计数器生成真随机数,这个功能与之前的辐射测量无关
*/
uint16_t random();
MCU | Work Well | Work Wrong | Untested | Remarks |
---|---|---|---|---|
Arduino Uno | √ | |||
FireBeetle-ESP32 | √ | |||
Micro:bit | √ | |||
FireBeetle-M0 | √ |
Written by fengli(li.feng@dfrobot.com), 2021.9.15 (Welcome to our website)