如果同时用USB和外部电源为Arduino供电会怎样?


45

我是Arduino新用户。我不确定是否可以通过电源适配器将USB和外部电源同时连接到Arduino。这会烧毁控制器吗?

基本上,我要在保存所有打开的文档后自动关闭计算机,直到我的UPS电池没电时才可以手动关闭它。我正在尝试使用Arduino通过USB通知计算机有关主电源的电源故障-AC 220V 50 Hz(电源中断时发送的通知/信号)。我认为这可以通过使用外部电压电源引脚来完成。每当市电电源断开时,外部电压电源引脚将从7 V降至0V。可以使用软件读取电压值(我不清楚这一点:可以吗?如果可以,怎么办? )。Arduino将继续通电,因为它已连接到计算机的USB,从而就电源故障与计算机进行了通信。

Answers:


11

arduinoBoardUno

功率

Arduino Uno可以通过USB连接或外部电源供电。电源是自动选择的。

将外部电源通过分压器或基于晶体管的逆变器放入模拟(分压器)或数字(逆变器)引脚,然后从该引脚检查适当的值。请注意,这不需要通过外部电源为Uno供电,仅需接地即可。


好。谢谢你的回答。通过USB连接和外部电源为它们供电时会发生什么。如果自动选择,它将选择什么来源?
Jagat 2014年

2
根据示意图,如果外部电源高于7.4V左右,将选择外部电源,否则将选择USB电源。
伊格纳西奥·巴斯克斯

仅接地。Uno不会自动完成吗?(或者您指的是分压器设置?)
匿名企鹅

@AnnonomusPerson:分压器和逆变器配置均不需要Uno由外部电源供电;它仅用于感应。
伊格纳西奥·巴斯克斯

2
答案实际上可能是正确的,但对于我(作为新手用户)来说似乎令人困惑。错过了一些摘要吗(我可以同时还是没有?)。这个分压器在说什么?我是否必须使用分压器来同时获得两个电源,或者这是证明某种能力的实验?
2014年

57

我是Arduino的新手。我不确定是否可以通过电源适配器将USB和外部电源同时连接到Arduino。这会烧毁控制器吗?

让我们研究Arduino UNO R3的示意图

电源插头(PWRIN,电源插孔)的输入通过二极管D1(以防止极性反接),并馈入NCP1117稳压器,该稳压器将其向下转换为5v电源,从而为5v部件供电。

电源输入

备用电源来自USB插头(USBVCC)。相关电路如下所示

在此处输入图片说明

USB电源线经过一个P-mosfet(T1),该开关用作开关,然后到达+ 5V节点(即第一个示意图中所示的+ 5v稳压器输出)。

mosfet由LMV358运算放大器(OPAMP)控制,该运算放大器用作比较器。
运算放大器的负输入连接至3.3V,正输入通过分压器馈入,电压分压器的Vin电平为一半。

  • 当Vin> 6.6V时,运算放大器的+输入变得高于-输入,并且运算放大器关闭MOSFET。

  • 当Vin <6.6V时,运算放大器的+输入变得低于-输入,并且运算放大器将MOSFET导通。

请注意,Vin位于输入二极管之后,因此比外部连接的电源电平低约0.6V。因此,当电源输入上连接的电源高于6.6V + 0.6V(其中0.6V是二极管D1的压降)时,USB电源线将被切断(因为mosfet关闭),并且电源由电源插头提供。在这种情况下,连接或断开USB电源不会有任何区别,因此,只有在电源输入降至指定水平以下(大约6.6V + 0.6V = 7.2V)时,才能同时连接两个电源。开始为电路板供电。


4
+1最佳答案:非常详细,精确和有说服力。
里卡多

注意,M7的Vf曲线令人讨厌。添加几个屏蔽(或一个大屏蔽)会将其Vf推至0.8V或更高。
伊格纳西奥·巴斯克斯

2
请注意,尽管D1为PWRIN引脚增加了保护,但它并没有针对Vin上的反极性提供保护。
罗素·麦克马洪

1
@sraboy Motor Shield仅将5V线用于逻辑电路部分,电机由单独的线供电。您描述了一种情况,其中电动机由原始电源线Vin(7.2v电池)供电,其余电路由5V线路供电。如果电池电量耗尽,则仅在继续为电动机屏蔽罩和Arduino的逻辑电路供电的情况下,USB的5V电压就不会获得任何动力,因为从5V线(在5V稳压器之后)到Vin(在调节器之前)。
alexan_e

1
@alexan_e感谢您的澄清!
sraboy '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.