Package: haas-python-gp2y10
HaaS Python介绍HaaS Python是阿里云IoT团队最新研发的一套低代码编程框架，兼容MicroPython编程规范，依托HaaS平台软硬件积木提供AI、支付、蓝牙配网、云连接、UI等物联网场景常用的能力，从而解决了物联网应用开发难的问题。有了Python轻应用框架，物联网编程不再局限于专业软件开发人员，一般的技术员也可以快速实现复杂的物联网需求。
更多HaaS Python介绍和开发资料见HaaS Python官网,创意案例,硬件积木HaaS Python is a set of low-code programming frameworks newly developed by Alibaba Cloud IoT team. It is compatible with MicroPython programming specifications. It relies on the hardware and software building blocks of the HaaS platform to provide capabilities commonly used in IoT scenarios such as AI, payment, Bluetooth network configuration, cloud connection, and UI. Solve the difficult problem of IoT application development. With the Python light application framework, IoT programming is no longer limited to professional software developers, and general technicians can quickly implement complex IoT requirements.
For more HaaS Python introduction and development materials, seeHaaS Python official website,Creative Case,Hardware Building Blocks安装方法在HaaS Python官网下载开发板对应的固件，并完成固件烧录Download the firmware corresponding to the development board atHaaS Python websiteand complete the firmware burning在开发板上运行以下命令完成安装和使用,如果您在使用过程中遇到问题，欢迎在github上向我们提交issue，我们的工程师会及时解答Run the following commands on the development board to complete the installation and use. If you encounter problems during use, please submit an issue to us ongithub, Our engineers will answer in timeimport upip
upip.install("haas-python-gp2y10")
import haas-python-gp2y10粉尘传感器 - GP2Y10一、产品简介GP2Y10粉尘传感器用于检测非常细的空气漂浮颗粒物，主要用于空气净化系统中，传感器外观引脚如下图所示。引脚定义GND：地VCC：5VLED：输入信号OUT：模拟信号输出二、技术参数工作电压：5V～7V工作电流：20mA最小粒子检出值：0.8微米灵敏度：0.5V/（0.1mg/m3）
工作温度：-10°C～65°C存储温度：-20°C～80°C模块重量：15g板子尺寸：46mm x 30mm x 17.6mm三、软件接口GP2Y10粉尘传感器HaaS Python驱动：下载地址GP2Y10(adcObj,gpioObj) - 创建粉尘传感器驱动对象函数原型gp2y10Obj = GP2Y10(adcObj,gpioObj)参数说明参数类型必选参数？说明adcObjADC是传感器OUT配置引脚调用此函数前需确保adcObj对象已经处于open状态gpioObjGPIO是传感器LED配置引脚调用此函数前需确保gpioObj对象已经处于open状态返回值GP2Y10对象成功，返回GP2Y10对象；GP2Y10对象创建失败，抛出Exception示例代码importgp2y10fromdriverimportGPIO,ADCgpioDev=GPIO()gpioDev.open("gp2y10led")adcDev=ADC()adcDev.open("gp2y10out")gp2y10Obj=gp2y10.GP2Y10(adcDev,gpioDev)print("gp2y10Obj inited!")输出gp2y10Obj inited!getVoltage() - 获取当前adc值函数功能：获取当前adc值函数原型：GP2Y10.getVoltage()参数说明：无返回值：返回当前adc值示例：importgp2y10fromdriverimportGPIO,ADCimportutimegpioDev=GPIO()gpioDev.open("gp2y10led")adcDev=ADC()adcDev.open("gp2y10out")gp2y10Obj=gp2y10.GP2Y10(adcDev,gpioDev)print("gp2y10Obj inited!")whileTrue:readvalue=gp2y10Obj.getVoltage()print("value is ",readvalue)utime.sleep(1)输出gp2y10Obj inited!
value is 8
value is 11
value is 13
value is 9
value is 13四、接口案例此使用实例在board.json中定义了名为GP2Y10的ADC和GPIO两种类型的对象。在Python脚本中获取粉尘传感器的adc值并打印在日志中。案例代码{"name":"board-name","version":"1.0.0","io":{"gp2y10out":{"type":"ADC","port":0,"atten":1,"width":3,"sampling":12000000},"gp2y10led":{"type":"GPIO","port":26,"dir":"output","pull":"pullup"}}}importgp2y10fromdriverimportGPIO,ADCimportutimegpioDev=GPIO()gpioDev.open("gp2y10led")adcDev=ADC()adcDev.open("gp2y10out")gp2y10Obj=gp2y10.GP2Y10(adcDev,gpioDev)print("gp2y10Obj inited!")whileTrue:readvalue=gp2y10Obj.getVoltage()print("value is ",readvalue)utime.sleep(1)输出gp2y10Obj inited!
value is 8
value is 11
value is 13
value is 9
value is 13五、工作原理其原理是粉尘传感器中心有个孔，可以让空气自由流过，定向发射LED光，通过检测经过空气中灰尘折射过后的光线来判断灰尘的含量。传感器装置中有一个红外发光二极管和光电晶体管，对角布置成允许其检测到在空气中的灰尘发射光。传感器内部电路图如下所示：参考文献及购买链接[1]粉尘传感器[2]购买链接