电子发烧友App

硬声App

0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示
电子发烧友网>电子资料下载>电子资料>从Bolt Android手动更改或自行更改来控制光的强度

从Bolt Android手动更改或自行更改来控制光的强度

2022-11-28 | zip | 0.23 MB | 次下载 | 免费

资料介绍

描述

一、简介

该项目的主要动机是通过从 Bolt Android 应用程序手动更改或自行更改来控制光的强度。

亮度的自我改变是通过使用光检测电阻 (LDR) 输入周围亮度来完成的,它的读数映射到 LED 的强度范围,并使用脉冲宽度调制 (PWM) 生成可变输出。

为了手动控制它,我们有一个可以访问 BOLT 云的用户界面。在这个界面中,我们可以看到一个 Pulse Width Modulation (PWM) 值,范围从 0 到 255,0 表示 LED 关闭,255 表示 LED 在最大亮度下打开。此界面可在螺栓云和智能手机 BOLT 应用程序上访问。

poYBAGOAcZyAAaRtAAqgjNR7dC0889.jpg
 

最后查看原理图。

2. LED亮度自动控制

在本节中,我们将了解如何根据 LDR 测量的周围亮度自动控制 LED 的亮度。

2.1 LED和LDR的电路连接

下面给出的是硬件连接。

LDR 的输入取自 A0,输出写入引脚 1。使用 BOLT 模块的 3.3V 引脚为 LDR 供电LDR 上的电阻随着落在其上的光强度的变化而变化。Bolt 模块可以读取电压值,因此制作了一个分压器电路,Bolt 模块的输入是 10k 电阻两端的电压,这取决于 LDR 两端的电阻。LED 的正极(较长)端子连接到数字引脚 1,负极(较短)端子连接到地。数字引脚 1 输出充当 LED 的电源,因此决定了它的强度。

poYBAGOAcaWAJZEmAAlaV4AQvjs733.jpg
 

2.2代码文件

这部分的代码是在 Ubuntu(Linux) 上用 python 编写的。我们需要一个配置文件,其中包含每个用户/设备的特定密钥。我们必须在我们的主代码文件中导入这个文件才能使用各种属性。

(命名为 conf.py):

API_KEY = "XXXX"        //Bolt Cloud API Key
DEVICE_ID = "BOLTXXXX"    //Device ID of the Bolt Module

Bolt 模块的 API 密钥和设备 ID 可以如下确定:

  • 按照https://cloud.boltiot.com/ 上的说明将您的 Bolt 设备连接到 Bolt 云。
  • 之后将出现以下屏幕。螺栓设备 ID 以黄色突出显示。
pYYBAGOAcaeAdJ0hAABmKqy3kkU821.jpg
 
  • 转到 API 部分以了解 API 密钥。
poYBAGOAcaqAeQztAAB1A0qFAlE893.jpg
 

2.3 LDR 值到 LED 值的映射

LDR 的值范围是 0 到 1024,LED 的值范围是 0 到 255。输入到 LED = 255 - (从 LDR 输出 / 4)进行了近似 4:1 的映射。

3.代码

 

3.1 自动功能代码

from boltiot import Bolt
import json,time            //importing python libraries

mybolt= Bolt(conf.API_KEY,conf.DEVICE_ID)                                                              

def set_intensity(pin,value)
mybolt.analogWrite(pin,value)

def control(sensor_val):
led_int= 255-(sensor_val*(255/1024)    #output value of led 
return led_int

while True:
print("Reading sensor value")
resp_ldr=mybolt.analogRead('A0') #read LDR value from A)
data=json.loads(resp_ldr)     #convert value to json format
print("Sensor value is: " + str(data['value']))    #print the value
try:
sensor_val=int(data['value'])
print("Light intensity")

led_float=control(sensor_value)    
led_value=int(led_float)
print(led_value)
set_intensity('1',led_value)

# in case of any error 
except error as e:
print("Error occured:- ")
print(e)
time.sleep(5)

3.2 Python的输出

pYYBAGOAca2AcGF2AABlu4YbO-8135.png
 

3.3手动功能

  • 选择产品选项卡,然后单击添加产品。
  • 输入产品名称并添加一个图标。
  • 单击配置此产品符号,然后转到代码选项卡。
poYBAGOAcbGAT0HPAAB_wNyLrIY891.jpg
 
  • 命名并选择文件类型为 html 并将以下代码粘贴到代码窗口中。
<html>

    <head>
        <title>Bolt IoT Platformtitle>

        <script type="text/javascript" src="https://cloud.boltiot.com/static/js/boltCmmands.js">script>

        <script>
        setKey('{{ApiKey}}','{{Name}}');

        var last_pwm_value=-1;
        function updateBuzzer(){
            var pwm_value=document.getElementById('pwm_value').value;
            if(last_pwm_value!=pwm_value){
                analogWrite(1,pwm_value);
                document.getElementById('pwm_value_display').innerHTML=pwm_value;
            }
            last_pwm_value=pwm_value;
        }
        setInterval(updateBuzzer,1000);
        script>
    head>
    <body>
        pwm value:
        <input type='range' id='pwm_value' min="0" max="255" value="0">
        <div id='pwm_value_display'>0div>
    body>

html>
  • 单击保存以保存您的配置,然后返回到产品屏幕。
  • 单击“将设备链接到此产品”,然后选择您的 BOLT WIFI 模块。
  • 单击“部署配置”图标以成功部署应用程序并使用智能手机 Bolt 应用程序。
  • 使用界面上的旋钮控制光强度。
pYYBAGOAcbSADtKyAABYchLNTkc219.png
手动强度控制旋钮
 

 


下载该资料的人也在下载 下载该资料的人还在阅读
更多 >

评论

查看更多

下载排行

本周

  1. 1山景DSP芯片AP8248A2数据手册
  2. 1.06 MB  |  532次下载  |  免费
  3. 2RK3399完整板原理图(支持平板,盒子VR)
  4. 3.28 MB  |  339次下载  |  免费
  5. 3TC358743XBG评估板参考手册
  6. 1.36 MB  |  330次下载  |  免费
  7. 4DFM软件使用教程
  8. 0.84 MB  |  295次下载  |  免费
  9. 5元宇宙深度解析—未来的未来-风口还是泡沫
  10. 6.40 MB  |  227次下载  |  免费
  11. 6迪文DGUS开发指南
  12. 31.67 MB  |  194次下载  |  免费
  13. 7元宇宙底层硬件系列报告
  14. 13.42 MB  |  182次下载  |  免费
  15. 8FP5207XR-G1中文应用手册
  16. 1.09 MB  |  178次下载  |  免费

本月

  1. 1OrCAD10.5下载OrCAD10.5中文版软件
  2. 0.00 MB  |  234315次下载  |  免费
  3. 2555集成电路应用800例(新编版)
  4. 0.00 MB  |  33566次下载  |  免费
  5. 3接口电路图大全
  6. 未知  |  30323次下载  |  免费
  7. 4开关电源设计实例指南
  8. 未知  |  21549次下载  |  免费
  9. 5电气工程师手册免费下载(新编第二版pdf电子书)
  10. 0.00 MB  |  15349次下载  |  免费
  11. 6数字电路基础pdf(下载)
  12. 未知  |  13750次下载  |  免费
  13. 7电子制作实例集锦 下载
  14. 未知  |  8113次下载  |  免费
  15. 8《LED驱动电路设计》 温德尔著
  16. 0.00 MB  |  6656次下载  |  免费

总榜

  1. 1matlab软件下载入口
  2. 未知  |  935054次下载  |  免费
  3. 2protel99se软件下载(可英文版转中文版)
  4. 78.1 MB  |  537798次下载  |  免费
  5. 3MATLAB 7.1 下载 (含软件介绍)
  6. 未知  |  420027次下载  |  免费
  7. 4OrCAD10.5下载OrCAD10.5中文版软件
  8. 0.00 MB  |  234315次下载  |  免费
  9. 5Altium DXP2002下载入口
  10. 未知  |  233046次下载  |  免费
  11. 6电路仿真软件multisim 10.0免费下载
  12. 340992  |  191187次下载  |  免费
  13. 7十天学会AVR单片机与C语言视频教程 下载
  14. 158M  |  183279次下载  |  免费
  15. 8proe5.0野火版下载(中文版免费下载)
  16. 未知  |  138040次下载  |  免费