作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在这里,我试图用 Tkinter 制作的 slider GUI 控制我的 sg90 伺服,并将 slider 的当前值通过串行发送到 Arduino。现在的问题是,每当我将 slider 从 72 快速移动到 77 时,它在串行监视器中显示的值是 7374757677。
这是python代码:
from tkinter import *
screen = Tk()
screen.geometry("400x400")
#some commands for arduino
import serial
uno = serial.Serial('/dev/ttyACM0', 9600)
def servocontrol(var):
uno.write(str(servo.get()).encode())
#defining the widget
servo = Scale(screen, from_=0, to=180, orient=HORIZONTAL, command=servocontrol)
#packing the widget
servo.pack()
#running the loop
screen.mainloop()
#include <Servo.h>
Servo myservo;
String pypos;
int pos = 0;
void setup()
{
myservo.attach(9);
Serial.begin(9600);
}
void loop()
{
if(Serial.available() > 0) {
pypos = Serial.readString();
Serial.println("Angle: " + pypos);
Serial.println('\n');
int pyposint = pypos.toInt();
myservo.write(pyposint);
Serial.flush();
delay(15);
}
}
最佳答案
如果有人也在寻找这个问题的答案,我找到了一个解决方法,这就是我所做的,
我没有通过编码将数据作为字符串发送,而是将数据作为字节格式的整数发送。
uno.write(bytes([var]))
关于python - 使用 python arduino 移动伺服,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61299882/
我正在开展一个项目,通过在伺服系统顶部使用摄像头,让您的脸保持在屏幕中央。我在 arduino playground 网站上使用了简单的伺服控制教程,使用鼠标控制伺服并尝试重写它以使用您脸部的 x 坐
我通过UART接口(interface)(RX-TX,GND-GND)将伺服(TowerPro sg90)连接到32伺服 Controller (this one)。 卖家提供了如何连接和控制我的伺服
我是一名优秀的程序员,十分优秀!