温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何通过python socket通信+mjpg实现树莓派视频小车

发布时间:2021-11-20 10:45:17 来源:亿速云 阅读:282 作者:小新 栏目:互联网科技

小编给大家分享一下如何通过python socket通信+mjpg实现树莓派视频小车,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

所需材料:树莓派2B或者2B以上,L2985n驱动板,若干排线,电池及电池盒,usb无线网卡(免驱动),usb摄像头(免驱动)。

所需环境:raspberry-gpio-python,以及安装mjpg-streamer及所需的环境。(这里就不多说了,等日后博主有时间增加这些环境的配置内容)

好了接下来开始我们的行动。

首先,开始我们先用4根母对母杜邦线分别连接L2985n的IN1,IN2,IN3,IN4然后对上树莓派的GPIO接口11,12,13,15。(IN1=12,IN2=11,IN3=13,IN4=15)

IN1,IN2控制的是OUT1,OUT2的马达

IN3,IN4控制的是OUT3,OUT4的马达

(注意,马达接线要左边的与左边的交叉相接,即左前轮和左后轮交叉相接。以此类推右边也是如此。)

树莓派PIN脚图借鉴下树莓派实验室的。(由于博主懒,详细的接线方法没上图。)

如何通过python socket通信+mjpg实现树莓派视频小车如何通过python socket通信+mjpg实现树莓派视频小车

接线完毕后,通过网络上的方法用ssh 进入到树莓派
输入命令:sudo nano start.py (将服务端代码复制上去)
然后Ctrl+x再输入Y加回车即可。
输入命令:sudo python start.py (即可运行!)

附下小车服务端控制代码:

###########################################
#Writer: Joker                            #
#Time: 2017.6.25                          #
###########################################
# -*- coding: utf-8 -*-
import RPi.GPIO as GPIO
from socket import *
import time
def t_init():
  GPIO.setmode(GPIO.BOARD)     
  GPIO.setwarnings(False)     
  GPIO.setup(11,GPIO.OUT)    
  GPIO.setup(12,GPIO.OUT)     
  GPIO.setup(13,GPIO.OUT)     
  GPIO.setup(15,GPIO.OUT)
def t_stop():     
  GPIO.output(11, False)     
  GPIO.output(12, False)     
  GPIO.output(13, False)     
  GPIO.output(13, False)     
  GPIO.output(15, False)
  time.sleep(1)
  GPIO.cleanup()
def t_up():     
  t_init()     
  GPIO.output(11, True)    
  GPIO.output(12, False)    
  GPIO.output(13, True)     
  GPIO.output(15, False)     
  time.sleep(1)     
  GPIO.cleanup()
def t_down():
  t_init()     
  GPIO.output(11, False)     
  GPIO.output(12, True)    
  GPIO.output(13, False)    
  GPIO.output(15, True)    
  time.sleep(1)     
  GPIO.cleanup()
def t_right():     
  t_init()     
  GPIO.output(11, False)     
  GPIO.output(12, True)     
  GPIO.output(13, True)  
  GPIO.output(15, False)     
  time.sleep(1)     
  GPIO.cleanup()
def t_left():
  t_init()
  GPIO.output(11, True)
  GPIO.output(12, False)
  GPIO.output(13, False)
  GPIO.output(15, True)
  time.sleep(1)
  GPIO.cleanup()
def commands (cmd):
  if cmd == 'd':     
    t_down()
  elif cmd == 's':   
    t_stop()
  elif cmd == 'u':   
    t_up()
  elif cmd == 'l':     
    t_left()
  elif cmd == 'r':
    t_right()
while 1:
    conn, addr = s.accept()
    print ('Connected by:', addr)
    while 1:
            command= conn.recv(20).replace('\n','')
            if command == 'g':
              conn.close
              break
            elif not command:break
            print a
            commands(a)
    conn.close()
conn.close()
############################################################################

以上是“如何通过python socket通信+mjpg实现树莓派视频小车”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI