首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用键盘控制机器人

用键盘控制机器人
EN

Stack Overflow用户
提问于 2016-09-17 04:21:51
回答 1查看 5.1K关注 0票数 0

我是Python和覆盆子pi的新手,我已经创建了一个轮式机器人,并编写了向前、向后、左转和右转的代码!然而,每次我想执行一个不同的脚本时,我必须打开一个新的代码并运行它(例如,打开向前的文件,然后打开左边的文件,等等)。

如何使用键盘箭头执行部分脚本?

我希望能够按下向上键,机器人向前移动,然后松开向上键,机器人停止,然后按左箭头键,机器人向左转,直到我释放键,依此类推。

Iv尝试了大量的论坛和线程,但它们都与不同的代码有关(iv发现了如何在turtle中使用键盘事件,但它们在i2c或gpio上不起作用)

有人能帮我吗?我打赌有一个非常简单的命令代码,但我不知道它是什么,也不知道在哪里可以找到它!

我正在使用adafruit运动帽和覆盆子pi来驱动马达,如果这有什么不同的话。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-09-18 04:17:10

为此,您只需要一个文件。创建一个新文件。

你需要一个无限循环,我建议使用while(true)循环。然后,您需要

代码语言:javascript
复制
if(/*key was UP ARROW*/){
/*CODE TO MAKE MOVE FORWARD HERE*/
}else if(/*KEY WAS DOWN ARROW*/{
/*CODE TO MAKE MOVE DOWN HERE*/
} etc...

while(true)循环内部。这样,您将能够使用一个文件来捕获所有键盘数据。所以,它看起来就像这样

代码语言:javascript
复制
while(true){
//read key input
if(/*key was UP ARROW*/){
    /*CODE TO MAKE MOVE FORWARD HERE*/
    }else if(/*KEY WAS DOWN ARROW*/{
    /*CODE TO MAKE MOVE DOWN HERE*/
    } etc...
}

这应该可以满足您的需求。你已经说过你有移动它的代码,所以这应该不会花很长时间来转移。

试着在这里阅读更多,https://learn.pimoroni.com/tutorial/robots/controlling-your-robot-wireless-keyboard这应该会对你有很大的帮助

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39539561

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档