RK3568教学实验箱_操作教程:5-15 直流电机控制实验

news2024/9/23 16:23:57

一、产品简介

TL3568-PlusTEB人工智能实验箱

国产高性能处理器

64 位 4 核低功耗

2.0 GHz超高主频

1T 超高算力 NPU

图片13.png

兼容鸿蒙等国产操作系统

android.png

img_pc_04 拷贝.png

Kylin.png

图层 194.png

图片1.png

二、实验目的

1、熟悉Qt程序的开发流程;

2、掌握Qt Creator的基础开发使用;

3、通过编写Qt程序实现直流电机控制的显示界面。

三、实验原理

Qt工程的创建步骤包括:

(1)创建Qt工程;

(2)GUI的设计实现:LCD显示界面以及与用户的交互;

(3)编辑控制代码;

(4)编译程序;

(5)运行程序。

屏幕截图 2024-09-23 143439.png

根据原理图,可知本实验使用的直流有刷电机模块是由L9110芯片驱动控制的。

image.png

L9110芯片

L9110S是为控制和驱动玩具马达设计的双通道推挽式功率放大专用集成电路器件,将分立电路集成在单片IC之中,使外围器件成本降低,整机可靠性提高。该芯片输入端兼容TTL/CMOS电平,具有良好的抗干扰性;该电路具备较大的电流驱动能力,每通道能通过0.8~1.0A的持续电流,峰值电流能力可达2.5A;该电路具有过温保护功能,内置的钳位二极管能释放感性负载的反向冲击电流。 另外还配置了霍尔传感器用于测速,OH34N 单极霍尔开关电路内部由反向电压保护器、电压调整器,霍尔电压发生器,差分放大器,史密特触发器和集电极开路输出级组成,能将变化的磁场讯号转换成数字电压输出。

直流电动机

直流电动机是最早出现的电动机,也是最早能实现调速的电动机。近年来,直流电动机的结构和控制方式都发生了很大的变化。随着计算机进入控制领域,以及新型的电力电子功率元器件的不断出现,使采用全控型的开关功率元件进行脉宽调制(简称PWM)控制方式已成为绝对主流。

PWM基本原理

(1)PWM( Pulse Width Modulation ):脉冲宽度调制,简称脉宽调制,是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术。

(2)占空比:指高电平在一个周期中所占的比例,即占空比D=t/T。例如占空比为50%即高电平占整个周期时间的一半。

(3)可调脉冲宽度t指高电平的时间,恒定的脉冲周期T是固定频率。

image.png

四、实验设备

实验软件

本实验中使用的软件为VMware17+Ubuntu18.04.4 和串口调试工具Xshell。

image.png

image.png

实验硬件

本实验中使用的是TL3568-PlusTEB实验箱,所需的配件为Micro SD卡、Type-C线和电源。

image.png

image.png

image.png

image.png

image.png

五、实验步骤

我们先打开Ubuntu,将Demo文件夹拷贝到RK3568目录下。

"Ctrl+Alt+T"打开控制台,执行命令打开配置文件

修改Makefile里的内核路径为实际路径。

保存后执行命令编译驱动

编译完成后将文件拷贝到SD卡内。

通过Linux系统启动卡或者OpenSSH的方式(需有网络和路由器)将编译生成的可执行文件拷贝至文件系统任意相同路径下。

本次操作采取OpenSSH的方式拷贝。使用OpenSSH命令将文件拷贝至实验箱文件系统。

编译.png

我们先打开Ubuntu,将Demo文件夹拷贝到RK3568目录下。

"Ctrl+Alt+T"打开控制台,执行命令启动Qt Creator。

打开工程文件

如有弹出的对话框,点击No。对话框主要内容为:是否需要加载上一台电脑的配置文件,此文件包含上一台电脑的配置规则,我们不需要使用,重新制定规则。勾选3568套件,然后点击configure project即可。

打开界面控制的源码

查看界面设计

点击"Projects",可以查看编译文件保存的路径

编译生成ARM端的Qt程序镜像,在右下角会出现编译进度条,变绿后编译完成。可在目录下查看生成的ARM端Qt程序镜像

编译完成后使用OpenSSH命令将文件拷贝至实验箱文件系统。

屏幕截图 2024-09-23 145618.png

硬件连接

(1)将Linux系统启动卡插至Micro SD卡槽。

(2)使用Type-C线连接USB TO UART2调试串口到PC机。

(3)将直流电机模块模块连接到电机拓展接口。

(4)连接电源线,先不要上电。

屏幕截图 2024-09-23 145618.png

软件操作

(1)先在设备管理器查看串口的端口号;

(2)再设置串口调试工具,波特率设置为1500000,点击连接,在Xshell调试终端会显示连接成功。

(3)连接成功后,拨动实验箱的电源开关,将实验箱上电。

(4)等待系统登录SD卡系统。

(5)登录成功后,在可执行程序所在目录执行命令运行程序。

(6)程序运行后LCD会显示界面。按下相应按键可以控制电机的转动,其中Up表示加速,Down表示减速,Change表示转向,Stop表示停止。

屏幕截图 2024-09-23 145618.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2157968.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

骨架行为识别-论文复现(论文复现)

骨架行为识别-论文复现(论文复现) 本文所涉及所有资源均在传知代码平台可获取 序言 骨架行为识别的定义 骨架行为识别是指通过分析人体骨架的运动轨迹和姿态,来识别和理解人体的行为动作。它是计算机视觉和模式识别领域的一个重要研究方向&a…

力扣上刷题之C语言实现-Days1

一. 简介 本文记录一下力扣的逻辑题。主要是数组方面的,使用 C语言实现。 二. 涉及数组的 C语言逻辑题 1. 两数之和 给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target的那 两个 整数,并返回它们的…

C++笔试强训15、16、17

文章目录 笔试强训15一、选择题1-5题6-10题 二、编程题题目一题目二 笔试强训16一、选择题1-5题6-10题 二、编程题题目一题目二 笔试强训17一、选择题1-5题6-10题 二、编程题题目一题目二 笔试强训15 一、选择题 1-5题 共有派生下,派生类的成员函数只能访问基类的…

大模型训练不难,三步即可实现

前言 初步认识了大模型长什么样了,接下来一起来看看如何训练出一个大模型。 训练方式,这里主要参考OpenAI发表的关于InstructGPT的相关训练步骤,主流的大模型训练基本形式大多也是类似的: 1、预训练(Pretraining&a…

安卓13设置动态修改设置显示版本号 版本号增加信息显示 android13增加序列号

总纲 android13 rom 开发总纲说明 文章目录 1.前言2.问题分析3.代码分析4.代码修改5.编译6.彩蛋1.前言 设置 =》关于平板电脑 =》版本号 在这里显示了系统的一些信息,但是这里面的信息并不包含序列号之类的信息,我们修改下系统设置,在这里增加上相关的序列号。 2.问题分析…

C语言 使用scanf函数时出现错误代码C4996

文章目录 错误样式解决方法方法一:使用安全的函数替代方法二:禁用警告方法三:检查并修改编译器设置 错误样式 C4996 ‘scanf’: This function or variable may be unsafe. Consider using scanf_s instead. To disable deprecation, use _C…

《算法岗面试宝典》正式发布

大家好,历时半年完善,《算法岗面试宝典》 终于可以跟大家见面了。 最近 ChatGPT 爆火,推动了技术圈对大模型算法场景落地的热情,就业市场招聘人数越来越多,算法岗一跃成为竞争难度第一的岗位。 岗位方向 从细分方向…

K8s Calico替换为Cilium,以及安装Cilium过程

一、删除Calico kubectl delete daemonset calico-node -n kube-systemkubectl delete deployment calico-kube-controllers -n kube-system kubectl delete ds kube-flannel-ds -n kube-system kubectl delete cm calico-config -n kube-system kubectl delete secret calico…

YOLOv5训练COCO2017数据集

网上没找到适合新手小白的教程,看了些教程,但还是没法解决自己遇到的问题。记录下自己的过程,希望能提供点帮助。 默认已经部署好了yolov5。 安装部署yolov5可参考以下: ubuntu20.04配置YOLOV5(非虚拟机)_ubuntu系统实现yolov5没有显卡-CSDN博客 目录 一、数据集下载…

Java基础-零拷贝

文章目录 什么是零拷贝?传统IO执行过程零拷贝的意义零拷贝的主要实现方式实际应用场景零拷贝的优势零拷贝的局限性 Java 中的零拷贝实现FileChannel.transferTo()FileChannel.transferFrom() 相关知识点解释什么是DMA内核空间和用户空间什么是用户态、内核态什么是上…

2012年408考研真题-数据结构

8.【2012统考真题】求整数n(n≥0)的阶乘的算法如下&#xff0c;其时间复杂度是(&#xff09;。 int fact(int n){ if(n<1) return 1; return n*fact (n-1); } A. O(log2n) B. O(n) C. O(nlog2n) D. O(n^2) 解析&#xff1a; 观察代码&#xff0c;我们不…

如何在openKylin中配置ssh服务并实现远程连接开放麒麟系统(1)

文章目录 前言1. 安装SSH服务2. 本地SSH连接测试3. openKylin安装Cpolar4. 配置 SSH公网地址5. 公网远程SSH连接6. 固定SSH公网地址7. SSH固定地址连接 前言 本文主要介绍如何在openKlyin系统中设置ssh连接&#xff0c;并结合cpolar内网穿透工具实现远程也可以ssh连接本地局域…

功能 接口测试,详解从抓包 +linux 日志 + 数据库的 bug 定位!

我在跟很多测试人员交流中发现&#xff0c;很大一部分测试工程师在进行功能和接口测试过程中&#xff0c;对于发现的bug很少去进行定位&#xff0c;只是将bug基于业务操作上如何出现的&#xff0c;进行描述&#xff1b;至于bug产生的原因&#xff0c;开发自己排查去吧。本文中&…

多语言文本 AI 纠错格式化 API 数据接口

多语言文本 AI 纠错格式化 API 数据接口 AI / 文本处理 AI 模型智能纠正 语法纠错 / 文本格式化。 1. 产品功能 支持多语言文本的语法纠错&#xff1b;自动识别并纠正拼写错误、语法错误和标点符号使用不当&#xff1b;优化文本格式&#xff0c;提高可读性&#xff1b;基于AI…

《李·斯莫林讲量子引力》:在不断运动的宇宙中探究离散的时空

可能是斯莫林的书读得并不多&#xff0c;感觉他讲故事的能力不如讲物理定律的能力。前半部分纯知识的可读性要好于后面讲述理论的创造过程的故事。如作者所说现代科学没有任何领域是单打独斗&#xff0c;而是不断探索&#xff0c;在团队中&#xff0c;前人和其他专业领域专家合…

vue使用PDF.JS踩的坑--部署到服务器上显示pdf.mjs viewer.mjs找不到资源

之前项目使用的pdf.js 是2.15.349版本&#xff0c;最近换了一个4.6.82的版本&#xff0c;在本地上浏览文件运行的好好的&#xff0c;但是发布到服务器&#xff08;IIS&#xff09;上打不开文件&#xff0c;控制台提示找不到pdf.mjs viewer.mjs。 之前使用的2.15.349pdf和viewer…

76、Python之函数式编程:柯里化都不懂,别说你会函数式编程

引言 很多时候&#xff0c;我们在定义函数处理比较复杂的业务逻辑时&#xff0c;首先是想着遵照“单一职能原则&#xff08;SRP&#xff09;”&#xff0c;尽量拆分为功能单一、足够精简的函数&#xff0c;以便保证代码的可读性和可扩展性。但是&#xff0c;有些逻辑就是没法拆…

2024年双十一有什么好物值得买呢?双十一必买好物清单

双十一买什么犒劳自己既不会浪费钱又可以增添生活的幸福感&#xff1f;以下就整理了五款更适合与秋冬独自生活相伴的好物&#xff0c;精致增加生活氛围感&#xff0c;热爱生活的同时更好的爱自己&#xff01;努力工作和生活当然也要更好的享受生活&#xff0c;给生活创造更多美…

Vue(14)——组合式API①

setup 特点&#xff1a;执行实际比beforeCreate还要早&#xff0c;并且获取不到this <script> export default{setup(){console.log(setup函数);},beforeCreate(){console.log(beforeCreate函数);} } </script> 在setup函数中提供的数据和方法&#xff0c;想要在…

数据结构和算法之树形结构(2)

文章出处&#xff1a;数据结构和算法之树形结构(2) 关注码农爱刷题&#xff0c;看更多技术文章&#xff01;&#xff01; 三、二叉查找树(接前篇) 二叉查找树&#xff0c;又称二叉搜索树或二叉排序树&#xff0c;是在普通二叉树基础上为了实现快速查找而设计出来的一种树形结…