FOC学习之路——硬件电路(一)

前言

记录一下驱动直流无刷电机走过的坑。我是和是室友一起在玩FOC,电路方面也是借鉴了他的。我俩共同的一个心得就是,电路这个东西直接抄要么你就要原封不动的复刻下来,要么你就要搞懂电路中的每个电阻电容都起到什么作用,然后在这个基础上改!!! 不然 ,弯路必然是少不了的。

硬件电路整体展示

主控部分 

主控部分用的STM32F103C8T6,本来想用C6T6的,但是它不支持CAN通信,想到之后要做小车,还是带一个总线靠谱一点。我没有画晶振,用的内部晶振。值得注意的地方就是用于驱动半桥的PWM我这里其实是有问题的,因为STM32F103C8T6定时器1的通道4是不在ADC的触发事件里面的,因此是没办法进行准确的电流采样的或者说会影响一部分性能。所以需要修改。这是第一个坑!!!切记,定时器的四个PWM通道中一定要有一个用于出发ADC采样,其他三个用于输出控制半桥的PWM。I2C是用于读取AS5600的,测试了一下在I2C高速模式下,AS5600的速率大约是6Khz。

电源管理和USB

 这部分其实就没有什么坑了,电源管理是直接抄WD1305的手册,对于没有接触过电源管理的同学来说(正是本人),照抄就好了,封装什么的最好都一样,很多第一次做的同学会把10uH选错,这也算是一个坑吧,这个选择功率电感就行,因为本身用于5V的电流也很小,通常是几十毫安,你选择一个500ma的功率电感基本是足够的。

 电机驱动

这部分是坑最大的一个部分,栅极驱动器用的是EG2133,自带死区控制。所以高侧和低侧刚好是反向的,所以直接共用一个PWM就可以。又一个坑来了!!!这个芯片的VCC和用于高侧的基电压一定要是一样的。其次是自举电路!!!我和室友在这上面坑了许久(因为不懂自举电路的作用),照抄就是了!!!不要图简化,省去二极管或者电容(原因自举升压芯片的使用_9个注意事项_栅极驱动_半桥驱动_哔哩哔哩_bilibili )。DMT3009LDT-7是双N沟道MOS管。栅极的电阻和二极管是用于降低MOS管的发热。至于原因的话推荐B站视频听说你的MOS管又又又被击穿了?_哔哩哔哩_bilibili 

电流采样

 用的专用电流采样芯片,采样电阻要考虑一下最终输出的电流和功率,选择合适的采样电阻就可以。我这里用的10毫欧1W的电流采样电阻,能走10A电流。

总结

  1.  PWM用的定时器中,有一个通道要能触发ADC采样。
  2. 自举电路二极管和电容不能少,电容不能太小。
  3. MOS管的电源和栅极驱动器的电源要分开,当然也可以用一个(限制了应用范围。
### 回答1: excel vba中的outlook .send方法是用来发送邮件的。该方法可以在vba代码中调用outlook应用程序,并使用指定的邮件信息发送邮件。使用该方法需要先创建一个outlook应用程序对象,然后使用该对象的createitem方法创建一个邮件对象,设置邮件的各种属性,最后调用.send方法发送邮件。该方法可以用于自动化发送邮件,提高工作效率。 ### 回答2: Excel VBA Outlook .Send方法是一种在Excel宏中使用Outlook发送电子邮件的方法。使用此方法,您可以在Excel中创建电子邮件模板,包括附件、收件人、主题、内容等,并通过Outlook发送该电子邮件。下面是关于Excel VBA Outlook .Send方法的详细解释。 1.语法: Outlook .Send 方法语法如下: expression.Send expression必需。代表 Outlook Application 对象的变量。 2.参数: 此方法没有必选参数,如您只是简单地发送电子邮件,您可以直接调用此方法。 3.返回值: 此方法不返回任何值。 4.示例: 下面是基于ID号发送 Outlook 电子邮件的示例: Sub send_Outlook_Email() Dim OutApp As Object Dim OutMail As Object Dim strbody As String Set OutApp = CreateObject("Outlook.Application") Set OutMail = OutApp.CreateItem(0) strbody = "Dear " & "Name" & "," & vbNewLine & vbNewLine & _ "This is a test email." & vbNewLine & vbNewLine & _ "Regards," & vbNewLine & _ "My Name" On Error Resume Next With OutMail .To = "recipient@domain.com" .CC = "" .BCC = "" .Subject = "Test Email" .Body = strbody .Attachments.Add ("C:\test.txt") .Send End With On Error GoTo 0 Set OutMail = Nothing Set OutApp = Nothing End Sub 在上述示例代码中,CreateObject 函数用于创建 Outlook 应用程序对象,之后,我们使用 CreateItem 函数创建了一个 MailItem 对象。 接下来,我们设置了各种电子邮件属性,例如 收件人、抄送、主题、正文等。最后,我们附加了一个文本文件,并调用 Send 方法从 OutMail 对象发送电子邮件。 5.注意事项: 在使用Outlook VBA Send方法时,您必须让Outlook应用程序运行在后台。如果Outlook应用程序没有启动,那么您必须在发送电子邮件之前启动它。 在VBA代码中使用Outlook应用程序需要授予许可证。如果Make Object Visible的属性未设置为True,则不会显示Outlook应用程序。 ### 回答3: Excel VBA中的Outlook .send方法是用于向Outlook发送邮件的一个方法。它允许开发人员将Excel工作簿中的数据或者信息,通过Outlook以电子邮件的形式发送出去。 使用Outlook .send方法的开发人员需要在Excel VBA项目中添加对Outlook的引用,然后使用Outlook对象模型中的相关方法和属性,来组织邮件的发送。在Outlook .send方法中,通过创建MailItem对象并对地址、主题、正文等属性进行设置,来完成邮件的构建。最后将MailItem对象使用.send方法发送出去即可。 此外,Outlook .send方法还允许开发人员定制电子邮件的各种属性和附件,例如,可以添加BCC、CC、重要性、请求回执、HTML格式等等。同时,Outlook .send方法也支持多个收件人接收邮件,并且能够将邮件分类和存档,使得邮件管理更加方便和高效。 总之,Outlook .send方法能够为Excel VBA程序开发人员提供一个可靠便捷的邮件发送方案,同时还具备较高的灵活性和可定制性。
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值