修改

图片

迪威网友e2ca8e
迪威网友e2ca8e

来自BTE16-18和Arduino Nano V3的功率计传感器

免费,登录即可下载
发布时间:2019/11/19 13:11:00
我有一个老式的功率计和旋转磁盘,但想把我的电力使用到仙人掌。
我做了这个廉价的seor,它的工作就像一个魅力。
使用的搜索引擎:
来自Aliexpress的BTE16-18红外反射seor(
康涅狄格州:
Seor->阿杜伊诺
VCC->5伏
接地->接地
输出->引脚D2
arduino的T通过10μF电容器桥接到GND,以防止arduino在建立串行连接时重置(这在Nano V3上工作,但其他Arduinos适用不同的方法)。如果你想把代码上传到Arduino,你必须拉这个电容器。
红外线会从仪表的塑料外壳上反射出来,如果不隔离红外线发射器,则无法进行校准。我刚用一些胶带做了一个小管子,正好放在发射器周围,与塑料窗平齐;这就解决了所有的校准问题。
seor应该设置为查看旋转磁盘的发光面。当黑色条纹出现时,将触发seor(=勾号)。arduino将跟踪刻度,计数可通过arduino的USB串行接口读取。连接后,发出命令“c”(计数)读取当前计数或“d”(增量。。。当时似乎合乎逻辑)读取当前计数并重置计数器。
仅检查当前刻度计数的外壳代码:
#!/波黑
回音'c'>/dev/ttyUSB0
ticks=$(head-n 1/dev/ttyUSB0)
echo“滴答声:$ticks”
读取当前刻度计数并重置计数器的外壳代码:
#!/波黑
回音'd'>/dev/ttyUSB0
ticks=$(head-n 1/dev/ttyUSB0)
echo“滴答声:$ticks”
Arduino Nano V3的Arduino代码:
int按钮pin=2;
volatile int buttonCounter=0;
int按钮状态=0;
整数字节=0;
空countButtonPresses();
无效设置(){
pinMode(按钮输入);
序列开始(9600);
buttate=数字读取(buttonPin);
附加中断(0,CountButtonPress,下降);
}
无效循环(){
while(ble()==0){}
inByte=();
开关(字节)
{
案例99:
n(按钮计数器);
休息;
案例100:
n(按钮计数器);
按钮计数器=0;
休息;
}
}
空countButtonPresses()
{
按钮计数器 ;
}
0个文件
压缩包大小:1MB
小程序二维码
微信小程序 微信扫码打开此模型
登录后发表评论
迪威模型和Solidworks 联合会员
恒诺鑫科-专注碳素制品的开发与生产