文章目录

  • 1 简介
  • 2 实现功能
  • 主控开发板:树莓派
  • 电机和控制器
  • 避障功能
  • 3 实现效果
  • 5 部分实现代码
  • 6 最后

1 简介

Hi,大家好,这里是丹成学长,今天向大家介绍一个单片机项目

** 基于树莓派的智能小车**

大家可用于 课程设计 或 毕业设计

单片机-嵌入式毕设选题大全及项目分享:

https://blog.csdn.net/m0_71572576/article/details/125409052

2 实现功能

  • 超声波测距
  • 四路红外避障
  • 检测周围环境的湿度
  • 检测周围环境的温度
  • 监控及拍照
  • 与人的交互,语音控制

主控开发板:树莓派

开发板有很多种,比如51单片机、树莓派、STM32、Arduino、micro:bit等等,都可以做为小车的控制板,我使用的是树莓派开发板,然后,可持树莓派有很多版本、型号,最便宜的树莓派zero 68元就可以买到,不过不建议买这种,没有网卡,需要另外买网线模块,我使用的是树莓派3B,价格220元,带有无线和有线网卡,还带有蓝牙。

树莓派配置:

  • Micro-USB Power–电源插槽
  • CPU
  • 四个USB接口
  • 一个HDMI接口
  • 一个耳机插孔,也可以输出视频
  • 40个GPIO引脚
  • 一个SD卡插槽,没有硬盘
  • 一个网线插口,自带无线网卡
  • 树莓派相机插槽

电机和控制器

这里选择使用,L298N双H桥直流电机驱动器

  • 马达A输出----------控制小车左后轮电机的旋转;
  • 马达B输出----------控制小车右后轮电机的旋转;
  • 12V输入-------------链接外部电源"+"极;
  • 电源地----------------链接外部电源"-"极;
  • 单片机I/O控制输入–链接树莓派GPIO引脚;
  • A通道使能----------默认跳线帽(可拔掉)链接上面5V引脚;
  • B通道使能----------默认跳线帽(可拔掉)链接上面5V引脚;
  • 板载5V输出使能----默认跳线帽(可拔掉)链接两个引脚;
  • 5V输入----------------该接口功能与板载5V输出使能有关;

避障功能

四路红外避障

3 实现效果

5 部分实现代码

部分控制代码:

# -*- coding:utf-8 -*-
import RPi.GPIO as GPIO
import timeclass Car():def __init__(self, left_in1, left_in2, left_ena, right_in3, right_in4, right_enb, low_electrical_level, hight_electrical_level):GPIO.setwarnings(False)GPIO.setmode(GPIO.BOARD)self.left_in1 = left_in1self.left_in2 = left_in2self.left_ena = left_enaif self.left_ena > 0:GPIO.setup(self.left_ena, GPIO.OUT)GPIO.setup(self.left_in1, GPIO.OUT)GPIO.setup(self.left_in2, GPIO.OUT)self.right_in3 = right_in3self.right_in4 = right_in4self.right_enb = right_enbGPIO.setup(self.right_in3, GPIO.OUT)GPIO.setup(self.right_in4, GPIO.OUT)if self.right_enb > 0:GPIO.setup(self.right_enb, GPIO.OUT)self.hight_electrical_level = hight_electrical_levelself.low_electrical_level = low_electrical_level'''右边轮子前进'''def rFoward(self):GPIO.output(self.right_in3, self.hight_electrical_level)GPIO.output(self.right_in4, self.low_electrical_level)if self.right_enb > 0:GPIO.output(self.right_enb, self.hight_electrical_level)'''左边轮子前进'''def lFoward(self):GPIO.output(self.left_in1, self.hight_electrical_level)GPIO.output(self.left_in2, self.low_electrical_level)if self.left_ena > 0:GPIO.output(self.left_ena, self.hight_electrical_level)'''右边轮子后退'''def rBackward(self):GPIO.output(self.right_in3, self.low_electrical_level)GPIO.output(self.right_in4, self.hight_electrical_level)if self.right_enb > 0:GPIO.output(self.right_enb, self.hight_electrical_level)'''左边边轮子后退'''def lBackward(self):GPIO.output(self.left_in1, self.low_electrical_level)GPIO.output(self.left_in2, self.hight_electrical_level)if self.left_ena > 0:GPIO.output(self.left_ena, self.hight_electrical_level)'''左边轮子停止'''def lStop(self):if self.left_ena > 0:GPIO.output(self.left_ena, self.low_electrical_level)else:GPIO.output(self.left_in2, self.low_electrical_level)GPIO.output(self.left_in1, self.low_electrical_level)'''右边轮子停止'''def rStop(self):if self.right_enb > 0:GPIO.output(self.right_enb, self.low_electrical_level)else:GPIO.output(self.right_in3, self.low_electrical_level)GPIO.output(self.right_in4, self.low_electrical_level)'''小车前进'''def moveForward(self):self.lFoward()self.rFoward()'''小车后退'''def moveBackground(self):self.lBackward()self.rBackward()'''小车右转'''def spinRight(self):self.rFoward()self.lBackward()'''小车左转'''def spinLeft(self):self.rBackward()self.lFoward()'''小车停止--左边及右边轮子都停止'''def stop(self):self.lStop()self.rStop()def cleanup(self):GPIO.cleanup()def instanceCar():return Car(11, 13, 15, 38, 40, 36, 0, 1)

单片机-嵌入式毕设选题大全及项目分享:

https://blog.csdn.net/m0_71572576/article/details/125409052

6 最后

【毕业设计】基于树莓派的智能小车设计 - 物联网 单片机 嵌入式 stm32相关推荐

  1. 【毕业设计之树莓派系列】基于树莓派的智能小车设计

    基于树莓派的智能小车设计 摘要 随着人们对智能化生活的需求不断增长,智能小车的发展逐渐受到关注.然而,现有的智能小车硬件和软件设计有一定的局限性,需要进一步改进和完善.本文旨在基于树莓派PICO开发板 ...

  2. 【记录】本科毕设:基于树莓派的智能小车设计(使用Tensorflow + Keras 搭建CNN卷积神经网络 使用端到端的学习方法训练CNN)

    0 申明 这是本人2020年的本科毕业设计,内容多为毕设论文和答辩内容中挑选.最初的灵感来自于早前看过的一些项目(抱歉时间久远,只记录了这一个,见下),才让我萌生了做个机电(小车动力与驱动)和控制(树 ...

  3. 基于树莓派的智能小车

    基于树莓派的智能小车 代码位置:Github地址 文章目录 基于树莓派的智能小车 一.简介 二.实验设备 三.前期准备 四.实验原理 4.1硬件调试 4.2 代码框架 4.3 代码实现 4.3.1 避 ...

  4. 树莓派智能小车python论文_基于树莓派循迹小车设计概述

    利用磁铁控制难以 的任务 . 3. 冷却系统是由 两 台 低 噪 音 离 心 式 风 机 组 成 , 流 量 30000m 3 ∕ h , 全 压 1 000Pa , 提供足够的风压 , 为提升机降温 ...

  5. 基于树莓派的智能家居设计

    文章目录 前言 一.整体系统框图 二.代码部分 二.APP客户端 1.MainActivity.java 2.NetUtils.java 三.实物展示 前言 一个简易的小项目,以下是代码部分和实物效果 ...

  6. 毕业设计 基于树莓派的智能家庭监控系统

    文章目录 0 前言 1 简介 2 主要器件 3 监控系统 Python 实现 安装 OpenCV motion mjpg-streamer 4 部分代码 5 最后 0 前言

  7. 【毕业设计】基于STM32自行车智能无线防盗报警器 -物联网 单片机 嵌入式

    0 前言

  8. android智能小车 论文,基于安卓手机蓝牙控制的智能小车设计毕业设计(论文).doc...

    编 号: 审定成绩: 毕业设计(论文) 设计(论文)题目: 学院:学 生 姓 名 :专 业 :班 级 :学 号 :指 导 教 师 :答辩组 负责人 : 填表时间:年月 摘 要 随着物联网的兴起,And ...

  9. python智能家居论文_毕业设计(论文)-基于树莓派的智能家居精选.docx

    毕业设计(论文)-基于树莓派的智能家居精选 摘要随着物联网技术的发展,智能家居产业迅速崛起.在此背景下,我们研究了智能家居管理系统的设计与实现.本文所设计的智能家居管理系统采用分层架构设计,分别为感知 ...

最新文章

  1. SQL SERVER特殊行转列案列一则
  2. canva旋转图片 js_js和canvas实现旋转图片
  3. 微软企业库4.1学习笔记(三)企业库迁移和并行使用,以及企业库的扩展
  4. 一文看懂深度学习与计算机视觉
  5. 线索二叉树原理及前序、中序线索化(Java版)
  6. 考研 考研爬虫大数据分析专业热度
  7. JMM主内存和工作内存运行流程图
  8. YII CDbCriteria 的一些常用方法记录
  9. python中变量的命名和关键字和变量的命名规则
  10. Android Zip文件解压缩代码
  11. C#开发笔记之14-如何用C#计算闰年?
  12. elk,centos7,filebeat,elasticsearch-head集成搭建
  13. 分享改进 高性能通用分表归档存储过程测试结果更新
  14. android手机测试用例,Android手机测试用例-从事手机测试必备
  15. linux设备数内核选项,linux内核设备树修改指南 / linux kernel device tree modify guide
  16. 如何解决长传CSDN图片问题
  17. JNI==java调用dll(native方法的实现) IDEA - visual studio
  18. 出现Please make sure you have the correct access rights and the repository exists.问题解决
  19. 加入收藏和设为首页JQuery代码
  20. JAVA 实现高级计算器程序

热门文章

  1. ORM框架简介和常用ORM框架
  2. 全手写resnet50,分分钟识别“十二生肖“图片
  3. 【脚本共享】CSDN版主批量删帖工具。
  4. Log4j2+ELK使用说明
  5. iphone开发导航控制器的使用
  6. 读书的意义(转载于B站)
  7. Oracle 19c通过SCAN连接ORA-12520
  8. 报错:TNS-12520: TNS: 监听程序无法为请求的服务器类型找到可用的处理程序
  9. LaTeX 术语集 Nomenclatures
  10. matlab仿真平稳随机过程程序,MATLAB 随机过程仿真