arduino串口监视器显示nan_Arduino-python 传数据 并且显示图像

1c3fc9460a4755fa291db31de4671ae7.png

1 Arduino 接线图

cca7774d16fb67bfb470bad2d72e8923.png

2 arduino的程序

int 

3 Python 显示数据

import 

4 显示效果

0f6f23aba2fd085d724ee8140b09ccea.png

5 扩展 添加另外一个box

如果需要将添加一个目标 target , 就需要建立一个 box 原点与圆柱一样y=-0.5, 长度窄点 length =0.2,width,height=3颜色设置为绿色

target = box(pos = vector(0,-0.5,0),length=0.2,width = 3,height=3,color=color.green)

#最终需要将其放在圆柱的尾端 
target.pox.x = -3+pos  #其中-3为初始的长度 需要减去

完整代码如下:

import serial    #导入串口库
from vpython import *     #导入vpython  进行数据绘图库
arduino = serial.Serial("com20",9600)    #连接串口
rod = cylinder(radius=0.5,length=6,pos=vector(-3,0,0))  #绘制一个半径0.5 长6 像素的圆柱 坐标点在 x=-3,y=0,z=0
lab = label(pos=vector(0,1,0),text='distance is : ',height=10,box = False) #绘制一个标签,存放数字,左边x=0,z=0.y=1,高度10 没有外框线
target=box(pos=vector(0,-.5,0), length=0.2, width=3, height=3, color=color.green)
while 1:

    try:
        if(arduino.inWaiting()>0):   #如果有串口数据
            data = float(arduino.readline().strip()) #读取数据 去除 其他换行符合 转换为小数
            rod.length= data           #将圆柱的长度设置为读取的数值
            print(data+-3)

            lab.text = 'distance is : ' + str(data)  #文字显示
            target.pos.x = -3 + data
    except:   #跳过异常
        pass

098688877f39fbba2d166cf4682928c1.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值