树莓派python编程小车(树莓派小车程序)
求助树莓派避障小车,遇到 python 了
小白第一次上手 python ,用树莓派,红外和超声波传感器做智障小车。 编译错误:
RuntimeWarning: This channel is already in use, continuing anyway. Use GPIO.setwarnings(False) to disable warnings.
GPIO.setup(trip,GPIO.OUT)
Traceback (most recent call last):
File "xiaochetest.py", line 82, in module
fwd()
TypeError: fwd() takes exactly 1 argument (0 given)
下面是小车的代码:
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
m1_fwd = 12
m1_rev = 11
m2_fwd = 13
m2_rev = 15
red_left = 07
red_right = 16
trip = 38
echo = 37
def init():
GPIO.setup(m1_fwd,GPIO.OUT)
GPIO.setup(m1_rev,GPIO.OUT)
GPIO.setup(m2_fwd,GPIO.OUT)
GPIO.setup(m2_rev,GPIO.OUT)
def stop(sleep_time):
GPIO.output(m1_fwd,False)
GPIO.output(m1_rev,False)
GPIO.output(m2_fwd,False)
GPIO.output(m2_rev,False)
time.sleep(sleep_time)
GPIO.cleanup()
def fwd(sleep_time):
GPIO.output(m1_fwd,GPIO.HIGH)
GPIO.output(m1_rev,GPIO.LOW)
GPIO.output(m2_fwd,GPIO.HIGH)
GPIO.output(m2_rev,GPIO.LOW)
time.sleep(sleep_time)
GPIO.cleanup()
def rev(sleep_time):
GPIO.output(m1_fwd,GPIO.LOW)
GPIO.output(m1_rev,GPIO.HIGH)
GPIO.output(m2_fwd,GPIO.LOW)
GPIO.output(m2_rev,GPIO.HIGH)
time.sleep(sleep_time)
GPIO.cleanup()
def right(sleep_time):
GPIO.output(m1_fwd,GPIO.HIGH)
GPIO.output(m1_rev,GPIO.LOW)
GPIO.output(m2_fwd,False)
GPIO.output(m2_rev,False)
time.sleep(sleep_time)
GPIO.cleanup()
def left(sleep_time):
GPIO.output(m1_fwd,False)
GPIO.output(m1_rev,False)
GPIO.output(m2_fwd,GPIO.HIGH)
GPIO.output(m2_rev,GPIO.LOW)
time.sleep(sleep_time)
GPIO.cleanup()
def get_distance():
GPIO.setup(trip,GPIO.OUT)
GPIO.setup(echo,GPIO.IN)
GPIO.output(trip,GPIO.HIGH)
time.sleep(0.000015)
GPIO.output(trip,GPIO.LOW)
while not GPIO.input(echo):
pass
t1 = time.time()
while GPIO.input(echo):
pass
t2 = time.time()
return (t2-t1)*34300/2
def turnaround():
GPIO.setup(red_left,GPIO.IN)
GPIO.setup(red_right,GPIO.IN)
while GPIO.input(red_left) and GPIO.input(red_right)==0:
rev()
if GPIO.input(red_left)==1:
left(1)
else:
right(1)
GPIO.cleanup()
while True:
distance = get_distance()
time.sleep(0.5)
if distance 20:
fwd()
elif distance == 20:
stop()
else:
stop()
turnaround()
def fwd(sleep_time)
if distance 20:
fwd()
调用 fwd 的时候要传参数啊,错误提示说的比较清楚了。

树莓派上用什么编程?
树莓派用python来进行编程。树莓派项目的一个核心思想是Python编程语言的使用。Python允许树莓派的拥有者将项目扩展到令人难以置信的规模。Python是一个解释型的面向对象的、跨平台的编程语言。良好的可靠性、清晰的语法和易用性,使它成为最流行的编程语言之一。Python是一个优雅的、功能强大的语言。
Raspberry Pi 系统用的是 ARM 架构的 Linux, Linux上的大部分编程语言如GNU C/C++, Java,Python, Perl, PHP都能用, .Net本来就不支持Linux, 不过说不定非官方的Mono会支持ARM。
Javascript语言和phthon哪个更适合少儿编程入门
Javascript语言和phthon,若是正规职业培训、项目开发当然是phthon,但中小学生只是业余时间学习,只需要掌握简单的编程思想,青少年主要精力还是学校学习。少儿学编程,需要的是最简单的编程环境,最简单的应用场境,方便孩子们利用碎片时间学习,少儿编程不需学习记忆繁杂的概念,以免影响学习,Javascript简单快捷,功能也足够,在手机上电脑上都可以方便地展示。Javascript比较适合少年儿童。
树莓派怎么运行python程序
树莓派运行Python程序的方法:
一、RaspBerry系统设置
1、首先在开发板没有通电情况下,连接硬件,以及项目中用到传感器。比如当前项目需要将LED灯插在面包板上,然后通过杜邦线将开发板和面包板连接,硬件平台搭建完毕。
2、其次打开树莓派开发板3B,然后用vnc连接上。
3、打开ssh功能。
如下图,Raspberry Pi Configuration
启用SSH连接功能。然后点击OK
更改后需要重新启动才能生效
二、使用ssh连接上开发板Raspberry Pi
1、打开事先安装好的File Zilla,输入IP地址、账户、端口号,连接到树莓派的Linux系统
2、在当前pi目录上创建存放开发项目的文件夹。在项目文件夹上创建具体的项目文件夹存放项目文件。例如在DIYdemo目录上创建LED灯项目
3、在PC端写好的python程序文件放到LED文件夹中。
三、运行python代码
1、打开VNC软件,点击菜单--programming--python3(EDLE)
2、打开写好的的程序,运行python程序
更多Python相关技术文章,请访问Python教程栏目进行学习!以上就是小编分享的关于树莓派怎么运行python程序的详细内容希望对大家有所帮助,更多有关python教程请关注环球青藤其它相关文章!
《树莓派Python编程指南》epub下载在线阅读,求百度网盘云资源
《树莓派Python编程指南》(Alex Bradbury)电子书网盘下载免费在线阅读
资源链接:
链接:
提取码:kzi7
书名:树莓派Python编程指南
作者:Alex Bradbury
译者:王文峰
豆瓣评分:7.1
出版社:机械工业出版社
出版年份:2015-1-16
页数:221
内容简介:本书由树莓派基金会资深软件开发工程师亲笔撰写,是学习在树莓派上编程的必备手册。即使你没有任何编程经验,也可以畅游树莓派的世界。本书覆盖了初学编程者和第一次做Python开发所需的基础知识,书中首先对Python编程做了基本介绍,并给出了通用的Python代码,然后逐步介绍了:
·配置并开始Python编程
·使用变量、循环和函数
·学习3口图形编程
·使用PyGame
·编程“我的世界”游戏
·编写Python脚本
·理解传感器和GPIO
本书深入浅出地介绍每条命令,并辅以生动的例子和源代码,可以帮助你学习Python编程所需的各种知识和技能,是开启Python编程之旅的必备指南。
作者简介:Alex Bradbury 树莓派基金会资深软件开发工程师,对树莓派的发展做出了卓越贡献。他精通Python、C/C++等多种编程语言,尤其对Python语言有独到见解。目前他在申请剑桥大学的多核架构编译技术博士学位。
Ben Everard 资深科技工作者,拥有丰富软件开发经验,创建并掌管Linux之音(),在该网站的电子杂志和播客上可以找到他的沉思录。之前,他曾做过Linux Format的技术编辑和NoPC的区域经理。在此期间,他负责监管坦桑尼亚的校园计算机测试和部署工作。
用Python画小车车
你好,下面是一个对应的代码
import turtle
import time
t = turtle.Pen()
def fun1(t, x, y):
t.forward(x)
t.left(y)
def fun2(t, x, y):
t.forward(x)
t.right(y)
'''
color函数有三个参数
第一个参数指定有多少红色
第二个参数指定有多少绿色
第三个参数指定有多少蓝色
都为0的时候此时为黑色
都为1的时候此时为白色
这种红色,绿色,蓝色的混搭叫做RGB
蓝色和红色混合产生紫色
黄色和红色混合产生橙色
'''
t.color(1, 0, 0)
t.begin_fill()
fun1(t, 100, 90)
fun1(t, 20, 90)
fun2(t, 20, 90)
fun1(t, 20, 90)
fun1(t, 60, 90)
fun2(t, 20, 90)
fun1(t, 20, 90)
t.forward(20)
t.end_fill()
t.color(0, 0, 0)
t.up()
t.forward(10)
t.down()
# 开始位置
#t.begin_fill()
# 画圆
t.circle(10)
# 结束位置
#t.end_fill()
# 设置当前的指定角度为0度
t.setheading(0)
t.up()
t.forward(90)
t.right(90)
t.forward(10)
t.setheading(0)
t.down()
#t.begin_fill()
t.circle(10)
#t.end_fill()
t.up()
time.sleep(20)