无人船的电机驱动: 1、由于无人船的电机功率比较大,无法使用驱动模块通过PWM来驱动。所以考虑使用继电器来驱动电机。使用继电器的缺点就是不能调速。 2、下面问题来了,无人船电源电压是12V,然而单片机一般都是5V来驱动,所以我将考虑使用一个降压模块,将12V降到5V左右,给STM32单片机供电。 3、单片机是如何与继电器进行结合工作呢是我们考虑的一个问题。我们要弄明白继电器的工作原理。继电器(英文名称:relay)是一种电控制器件,当输入量的变化达到规定要求时,在电气输出电路中使被控量发生预定的阶跃变化的一种电器。它具有控制系统(又称输入回路)和被控制系统(又称输出回路)之间的互动关系。通常应用于自动化的控制电路中,它实际上是用小电流去控制大电流运作的一种“自动开关”。 附上继电器的接线图:123为一路继电器,456为1路继电器 附上代码:选用PB1、PB2、PE11、PE12分别对应继电器的CH1、CH2、CH3、CH4引脚
relay.c #include "stm32f10x.h" #include "relay.h" void RELAY_Init(void) //初始化函数 { GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOF, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz; GPIO_Init(GPIOB, &GPIO_InitStructure); GPIO_SetBits(GPIOB,GPIO_Pin_1); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_2; GPIO_Init(GPIOB, &GPIO_InitStructure); GPIO_SetBits(GPIOB,GPIO_Pin_2); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11; GPIO_Init(GPIOF, &GPIO_InitStructure); GPIO_SetBits(GPIOF,GPIO_Pin_11); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_12; GPIO_Init(GPIOF, &GPIO_InitStructure); GPIO_SetBits(GPIOF,GPIO_Pin_12); } //控制螺旋桨转向 void go_relay_on(void) { GPIO_SetBits(GPIOB,GPIO_Pin_1); //无人船前进 GPIO_SetBits(GPIOF,GPIO_Pin_11); } void back_relay_on(void) { GPIO_SetBits(GPIOB,GPIO_Pin_2); //无人船倒退 GPIO_SetBits(GPIOF,GPIO_Pin_12); } void go_left(void) //无人船左转 { GPIO_SetBits(GPIOB,GPIO_Pin_2); GPIO_ResetBits(GPIOB,GPIO_Pin_1); } void go_right(void) //无人船右转 { GPIO_SetBits(GPIOB,GPIO_Pin_1); GPIO_ResetBits(GPIOB,GPIO_Pin_2); } void go_relay_stop(void) { GPIO_ResetBits(GPIOB,GPIO_Pin_1); GPIO_ResetBits(GPIOF,GPIO_Pin_11); //无人船前进停止 } void back_relay_stop(void) { GPIO_ResetBits(GPIOB,GPIO_Pin_2); GPIO_ResetBits(GPIOF,GPIO_Pin_12); //无人船后退停止 }
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算