• 机器人控制器编程实践指导书旧版-实践八 机器人综合设计


    适用于UNO/2560/DUE/ESP8266/ESP32,2021年之前使用版本。


     

    8.1 实践目的

    • 综合运用Arduino[ESP32]单片机编程技术和机器人相关硬件单元设计具有特殊功能的机器人。

    8.2 实践设备

    • PC机一台
    • Arduino[ESP32]开发板及配件等
    • 万用表和示波器等

    8.3 实践原理

    • 初级:无
    • 中级:

    观察示意图,需理解各模块作用。

    示意图

    模型图

    • 高级(ROS选修):

    使用ROS实现蓝牙小车遥控。

    8.4 实践内容

    阅读8.3中示意图、原理图和代码,在Arduino[ESP32]平台上完成实践。

    8.5 实践问题

    手机蓝牙遥控与电脑蓝牙遥控最大差异在哪里?

    蓝牙是无线数据和语音传输的开放式标准,它将各种通信设备、计算机及其终端设备、各种数字数据系统、甚至家用电器采用无线方式联接起来。它的传输距离为10cm~10m,如果增加功率或是加上某些外设便可达到100m的传输距离。它采用2.4GHz ISM频段和调频、跳频技术,使用权向纠错编码、ARQ、TDD和基带协议。TDMA每时隙为0.625μs,基带符合速率为1Mb/s。蓝牙支持64kb/s实时语音传输和数据传输,语音编码为CVSD,发射功率分别为1mW、2.5mW和100mW,并使用全球统一的48比特的设备识别码。由于蓝牙采用无线接口来代替有线电缆连接,具有很强的移植性,并且适用于多种场合,加上该技术功耗低、对人体危害小,而且应用简单、容易实现,所以易于推广。

      电脑主板与手机的蓝牙使用的是相兼容的协议,在10米范围内可以互相通信。

    8.6 实践总结

    回顾本次实践,遇到哪些问题,如何解决,经验和启发有哪些?

    Verp PID控制

    if (simK3.getLineSensor(k3Handle,0)>0.5) then

        velLeft=maxVel         -- left sensor intensity > 0.5

    else

        velLeft=maxVel*0.5    -- left sensor intensity <= 0.5

    end

    if (simK3.getLineSensor(k3Handle,1)>0.5) then

        velRight=maxVel        -- right sensor intensity > 0.5

    else

        velRight=maxVel*0.5    -- right sensor intensity <= 0.5

    End

    velLeft=1.74*maxVel*simK3.getLineSensor(k3Handle,0)

    velRight=1.74*maxVel*simK3.getLineSensor(k3Handle,1)

    评分:                                                         

                                                                   


    Arduino Uno 是整个 Arduino 家族当中使用最为广泛、文档最为齐全的一款硬件产品,基于 Microchip 微芯公司的 8 位 AVR 单片机 ATmega328P,工作电压为5V,采用16MHz的无源谐振器,并拥有32 KB的 Flash 存储器(其中0.5KB用于Bootloader程序),以及2KB的 SRAM 和1KB的 EEPROM。

    Arduino Mega 2560开发板基于ATmega2560微控制器,与 Uno 上采用的 ATmega328P 同属 8 位 AVR 微控制器,其工作电压同为5V,采用的时钟频率为16MHz,拥有256KB容量的 Flash 存储器(其中8KB用于 Bootloader),8KB大小的 SRAM,4KB容量的 EEPROM。

    Arduino Due 开发板基于 Atmel SAM3X8E ARM Cortex-M3 CPU 微控制器,工作电压为3.3V,采用的时钟晶振频率为84 MHz,拥有512KB的 Flash 存储器,以及96KB的 SRAM(分为64KB和32KB两个Bank)。作为第一款基于 32 位 ARM 内核微控制器的 Arduino 开发板,板载 54 个数字输入/输出引脚(其中 12 个可用于 PWM 输出),12 个模拟输出,4 个硬件串行接口,其引脚分布基本与 Arduino Mega 2560 保持一致。

    Wemos D1是一款基于上海乐鑫科技的 WIFI 芯片 ESP8266 的仿 Arduino Uno 开发板,通过Arduino core for ESP8266 WiFi chip 开源项目为 Arduino 环境提供了对 ESP8266 芯片的支持。
    特性:

    基于ESP-8266EX

    Arduino兼容,使用Arduino IDE编程

    • 11 x I\O引脚
    • 1 x ADC引脚(输入范围0~3.3V)
    • 板载5V 1A开关电源(高输入电压24V)
       

  • 相关阅读:
    VMware使用教程
    【智能优化算法】从蚁群到动物园
    Docker基础入门详解
    【java学习】Annotation-Driven(注解驱动编程)-spring常用注解
    C++学习——C++中const的新花样
    PAT 1023 Have Fun with Numbers(高精度乘法)
    仿真-Carla-控制方法原理流程研究
    Q总结 近日论文涉及知识点简要梳理
    Git 入门&常用命令
    设计模式-C#实现简单工厂模式
  • 原文地址:https://blog.csdn.net/ZhangRelay/article/details/126261221