EDN首页   博客首页

1

关于投票
机器人组图

探险机器人

家政服务机器人

水下机器人

空调除尘机器人

能骑自行车的机器人

排爆机器人

人型机器人

制作中的人型机器人

 

 

系统分类: 单片机
用户分类: 电子电路
标签: 机器人
来源: 整理
发表评论 阅读全文(630) | 回复(0)

0

关于投票
0欧姆电阻的用途

*模拟地和数字地单点接地*
  只要是地,最终都要接到一起,然后入大地。如果不接在一起就是"浮地",存在压差,容易积累电荷,造成静电。地是参
考0电位,所有电压都是参考地得出的,地的标准要一致,故各种地应短接在一起。人们认为大地能够吸收所有电荷,始终维
持稳定,是最终的地参考点。虽然有些板子没有接大地,但发电厂是接大地的,板子上的电源最终还是会返回发电厂入地。如
果把模拟地和数字地大面积直接相连,会导致互相干扰。不短接又不妥,理由如上有四种方法解决此问题:1、用磁珠连接;
2、用电容连接;3、用电感连接;4、用0欧姆电阻连接。
  磁珠的等效电路相当于带阻限波器,只对某个频点的噪声有显著抑制作用,使用时需要预先估计噪点频率,以便选用适当
型号。对于频率不确定或无法预知的情况,磁珠不合。
  电容隔直通交,造成浮地。
  电感体积大,杂散参数多,不稳定。
  0欧电阻相当于很窄的电流通路,能够有效地限制环路电流,使噪声得到抑制。电阻在所有频带上都有衰减作用(0欧电阻
也有阻抗),这点比磁珠强。
  *跨接时用于电流回路*
  当分割电地平面后,造成信号最短回流路径断裂,此时,信号回路不得不绕道,形成很大的环路面积,电场和磁场的影响
就变强了,容易干扰/被干扰。在分割区上跨接0欧电阻,可以提供较短的回流路径,减小干扰。
  *配置电路*
  一般,产品上不要出现跳线和拨码开关。有时用户会乱动设置,易引起误会,为了减少维护费用,应用0欧电阻代替跳线
等焊在板子上。
  空置跳线在高频时相当于天线,用贴片电阻效果好。
  *其他用途*   布线时跨线
  调试/测试用
  临时取代其他贴片器件
  作为温度补偿器件

更多时候是出于EMC对策的需要。另外,0欧姆电阻比过孔的寄生电感小,而且过孔还会影响地平面(因为要挖孔)。

系统分类: 工业控制
用户分类: 电子电路
标签: 无标签
来源: 转贴
发表评论 阅读全文(555) | 回复(0)

0

关于投票
LG9110电机控制驱动芯片
特点:
1、低静态工作电流;
2、宽电源电压范围:2.5V-12V;
3、每通道具有800mA连续电流输出能力;
4、较低的饱和压降;
5、TTL/CMOS输出电平兼容,可直接连CPU;
6、控制和驱动集成于单片IC之中;
7、具备管脚高压保护功能;
8、工作温度:0℃-80℃。
描述:
  LG9110是为控制和驱动电机设计的两通道推挽式功率放大专用集成电器器件,将分立电路集成在单片IC
之中,使外围器件成本降低,整机可靠性提高。该芯片有两个TTL/CMOS兼容电平的输入,具有良好的抗干扰
性;两个输出端能直接驱动电机的正反向运动,它具有较大的电流驱动能力,每通道能通过750-800mA的持
续电流,峰值电流能力可达1.5-2.0A;同时它具有较低的输出饱和压降;内置的钳位二极管能释放感性负载
的反向冲击电流,使它在驱动继电器、直流电机、步进电机或开关功率管的使用上安全可靠。LG9110被广泛
应用于玩具汽车电机驱动、步进电机驱动和开关功率管等电路上。



点击看大图 



点击看大图

点击看大图

点击看大图

系统分类: 工业控制
用户分类: 电子电路
标签: LG9110 电机控制 驱动芯片
来源: 转贴
发表评论 阅读全文(1208) | 回复(3)

0

关于投票
前几天刚刚到货的电机…………

前几天刚到的电机  感觉还是很不错的………

点击看大图

 

系统分类: 工业控制
用户分类: 电子电路
标签: 无标签
来源: 原创
发表评论 阅读全文(723) | 回复(0)

1

关于投票
PCF8591(AD,i2c接口)

I2C Interfacing Part 2: Analog-to-Digital, Pressure Sensing, and 5V Power

By Sivan Toledo
December 2006

This page describes my second I2C interfacing project. For a general overview of I2C and for basic information on how to use I2C devices from a NXT program, see the first part of this series

This part shows how to construct a pressure sensor for the NXT, one that can measure the pressure in a Lego pneumatic system. This sensor allows the NXT when to turn a pneumatic compressor on and off. For a lot of information on Lego pneumatics, see C. S. Soh's web site. A commercial pressure sensor for the NXT is produced by Mindsensors; it is an analog sensor with a pressure range similar to that of my sensor.

The I2C  chip that we'll use is an analog-to-digital converter (ADC). An analog-to-digital converter chip allows you to connect an analog sensor (one that converts changes in some physical quantity to changes in voltage) to a digital communication channel, like the I2C channel of the NXT's input ports. Here we'll use an ADC chip to interface a pressure sensor to the NXT. The pressure sensor runs on 5.1 Volt supply, higher than the 4.3 Volts that the NXT supplies to sensor ports. Therefore, we'll need to use the 9 Volts supply line and step it down to 5 Volts.

Warning: connecting your NXT to any home-made gizmo (like the one described here) can damage it. Beware.

The PCF8591 Chip: an Analog-to-Digital and Digital-to-Analog I2C Converter

The ADC chip that I used the PCF8591 from Philips. The chip has four analog inputs that it can measure and one analog output (so the chip is both an ADC and a digital-to-analog converter, a DAC). The chip runs on anything from 2.5 to 6 Volts, so it can easily run on the NXT's 4.3V supply.

The chip has four analog inputs that can independently measure voltages between two reference voltages called Vagnd (analog ground) and Vref. These voltages (and the inputs) should not be exceed the supply voltages by more than 0.5v. You can also configure the chip (via I2C programming) to use some of the inputs as differential inputs, relative to one another and not relative to the fixed references. We won't use differential inputs here. In absolute mode, the chip divides the voltage range into 256 equal intervals and represents each measurement using an unsigned byte (in the differential setting, the byte is signed, telling you which input is higher and by how much).

The chip also has one output that you can set to 256 different voltages between Vagnd and Vref. We won't use it here.

To use the chip, the I2C master addresses it (the four high bits are 1001 and the three lower ones are configurable via pins) and then sends a control byte. The control byte tells the chip how you want to configure the inputs (absolute, differential, or a combination), whether you want to use the analog output, and which input you want to read next. You can also tell the chip to send several input values (from different ADC channels) sequentially. I configured the circuit to use only one input, number 2, I didn't use the analog output, and I only wanted one measurement in each I2C transaction. Therefore, in every transaction I sent the chip the two-byte sequence 0x90 0x02 and received one byte back, representing the voltage at input 2.

The Pressure Sensor: MPX4250A

The pressure sensor that I used is the MPX4250A. It is made by Freescale, and it is designed primarily for automotice applications. It measures absolute pressure, it contains on-chip circuitry for temperature compensation, and it comes calibrated. The chip comes on four different packags: two for soldering onto a printed-circuit board (PCB) and two that plug into a socket and are inteded to be secured with some kind of screws; two with a port (a little nozzle for connecting a hose) and two without a port. For Lego pneumatic applications, we need the versions with a port. The package intended for soldering into a PCB comes in a package called "small outline" which is inconvenient for prototyping (and difficult to solder by hand), so I used the bigger package type, called Unibody.

Unibody package (with port) small outline package with port
Unibody package (with port) Small-outline package (with port)

In principle, this chip is easy to use. Only 3 of its pins are used. One should be connected to ground, one to suply voltage around 5.1 Volts (between 4.85 and 5.35), and the third is the output pin: its voltage indicates the pressure at the port. The output voltage and the pressure are related by the following formula: Vout = Vs* (0.004 x P-0.04), where Vs is the supply voltage and P is the pressure in kPa (kilo Pascals). 101325 Pascals are one atmosphere, and the sensor measures between 0 and 250 kPa, so it can measure pressure up to 2.5 times the normal pressure at sea level.

To use this chip in an I2C sensor, we need to hook its output pin to the input pin of an analog-to-digial converter like the PCF8591, and to make sure that the reference voltage that the A/D converter uses is the supply voltage of the analog sensor pressure. The PCF8591 has a voltage refence pin that I used for this purpose. If the A/D chip uses its supply voltage as the reference voltage, then we would need to use the same supply voltage for the sensor and for the A/D chip.

A 5 Volts Supply from the NXT's Sensor Inputs

The MPX4250A needs supply voltage between 4.85 and 5.35 Volts. The NXT supplies 4.3 Volts to all the ports. This is too low for the pressure sensor. My measurements showed that the NXT supplies 4.66 Volts, not 4.3 (Philo wrote to me on the nxtasy.org forum that this voltage ranges between 4.1 V and 4.7 V, so it definitely may be too low). Even if the sensor would not completely fail when powered by this supply, it may function inaccurately; its performance, accuracy, and caliberation is only guaranteed for 4.85 to 5.35 Volts.

Therefore, we need to somehow generate regulated 5.1 Volts (or 5V, which is good enough here) from the sensor port. 

We will do this by using pin 1 of the sensor port. This pin is called ANA (analog), which is primarily used for analog sensing by the NXT (it is used with the NXT's light, sound, and touch sensors, as well as with the RCX sensors). When the sensor port is configured for I2C, you can tell the NXT to power this pin. To do so, you configure the port to IN_TYPE_LOWSPEED_9V. When I measured the voltage on this pin in this configuration, I got around 6.75V, not 9V. We will use a simple inear voltage regulator to step down and regulate this voltage to 5V.

In the first prototype I used a standard low-power linear regulator, the 78L05. It worked, but it is not a good idea. This chip requires 7V as input; in my example it did work with 6.75, but it may fail below 7V. This regulator, the 78L05, is a pretty old design. There are newer chips called low-drop linear regulator that need an input voltage that is just a bit higher than the regulated output. Such regulators should work more reliably here; I plan to try a regulator from ST Microelectronics, the L4949V5.

Another consideration when using the ANA pin of sensor ports is the low amount of current that they can supply, 18mA. This is more than enough for the PCF8591 and the MPX4250A (which need 1mA and 10mA max, respectively), but it means that the regulator itself must be pretty efficient (the L4949V5 consumes 5-8mA at low loads, so it is borderline here).

The 18mA current limit also has advantages: since the NXT limits the current to this pin, it cannot damage devices by providing too much power to them. Philo suggested on the nxtasy.org forum that a 5.1V Zener diode can serve as a 5V regulator in this case.

The Circuit

I didn't draw this circuit but rather built it directy from the data sheets onto the breadboard. It uses only three chips: the MPX4250A pressure sensor, the PCF8591 to do the analog-to-digital conversion and I2C interfacing, and a 5V voltage regulator. apart from these, it only uses two 82k pullup resistors (required on the I2C lines according to the NXT documentation) and three bypass capacitors, a 0.22μF on the input side of the regulator, and two 100nF capacitors on the 4.3V and the 5V supplies.

Prototyping

I built the circuit on a simple breadboard. I modified the connection to the NXT from my 8574 prototype: I soldered the 6 wires in the NXT cable to 6 header pins (standard 0.1" pins, like those of DIP chips), which allows me to plug the NXT cable directly onto the breadboard. It's still a little ugly, but mechanically and electrically solid.

点击看大图

You can see the wire that goes to the NXT (the little proto-board on the left), the two 82k pullup resistors and the PCF8591 chip (in the center). The pressure sensor is in the center, and above it you can see the voltage regulator and the three capacitors. The pressure sensor is connected to a Lego pneumatic hose. On the bottom, you can see the yellow Lego pneumatic hand pump and the end of the pneumatic switch that I used for testing.

The wiring is a lot neater than my 8574 prototype.

Programming

The program that demostrates the use of the prototype pressure sensor is pretty simple if you read the first part of this series. It simply sends an I2C command to the PCF8591 to perform one measurement and waits for the result. This program is written in NXC, a C-like language for the NXT by John Hansen; it is a easier to use than NBC, a low-level language that I used in the first part of the series.

Experiences

  1. The current drawn from the ANA pin when the 78L05 regulator is used is around 5-7mA, well below the limit.
  2. When I run the program, it runs for a while (it is an infinite loop), but then stops with no explanation. I think that the NXT is sensing some failure, perhaps too much current drawn from the ANA pin, and shuts down the program. I'll do more experiments with other regulators to find out. If somebody known why this is happening, let me know.
    Update: I inserted a 250ms delay in the program after every measurement, and now it works without a problem. So I think that the issue was with how the program is using the I2C system calls, not with the hardware.
  3. Other than these crashes, the sensor works well. When the pneumatic hose is not pressurized, it always returned 94. That is, 
    Vout / Vs = * (0.004 x P-0.04) = 94/255
    which translates into about 102kPa, which is very close to 1 atmosphere.
  4. When I pressurize the hoze using the Lego hand pump, I can get the sensor to return 255, the maximum value. This shows that the 250kPa is perhaps a little too low for Lego pneumatics, but I think that it is enough for controlling compressors, which is the main application of this sensor.

Alternative Devices

If you are planning to build a pressure sensor for the NXT (or for some other computer with an I2C communication channel), there are some other devices that you may want to consider.

  1. There are highly-integrated pressure sensors (and other kinds of sensors) that incorporate the ADC and the I2C into a single package, such as the ASDX-DO series from Honeywell. They are much more expensive (Digikey lists ASDX sensors at more than $34 whereas the MPX4250A lists for less than $15; even if you add $3.50 for the PCF8591, the combination that we used here is cheaper than a fully integrated sensor). A fully-integrated sensor is physically small, but you can get pretty close with a surface-mount pressure sensor (like the small-outline package of the MPX4250A) and a surface mount ADC.
  2. In several ways, the PCF8591 is an overkill for our sensor: it has four ADC channels and an DAC channel, whereas we only need one ADC. There are I2C chips with only one ADC channel, like the ADS1100 from Texas Instruments. That chip is also physically smaller than the PCF8591, and more accurate (16-bits per sample).
  3. It should be possible to generate 5V from the 4.3V supply using a switching regulator. Switching regulators usually require a more complex circuit than linear regulator, but this may be a better idea since the 4.3V pin can provide much more power than the ANA pin.

© 2006, Sivan Toledo

系统分类: 测试测量
用户分类: 电子电路
标签: PCF8591
来源: 整理
发表评论 阅读全文(835) | 回复(0)

0

关于投票
555时基电路应用集锦

555时基电路应用集锦

555无稳态电路

 

第一种(见图1)是直接反馈型,振荡电阻是连在输出端VO的。

点击看大图

第二种(见图2)是间接反馈型,振荡电阻是连在电源VCC上的。其中第1个单元电路(3.2.1)是应用最广的。第2个单元电路(3.2.2)是方波振荡电路。第3、4个单元电路都是占空比可调的脉冲振荡电路,功能相同而电路结构略有不同,因此分别以3.2.3a 和3.2.3b的代号。

点击看大图

第三种(见图3)是压控振荡器。由于电路变化形式很复杂,为简单起见,只分成最简单的形式(3.3.1)和带辅助器件的(3.3.2)两个单元。图中举了两个应用实例。

点击看大图

无稳电路的输入端一般都有两个振荡电阻和一个振荡电容。只有一个振荡电阻的可以认为是特例。例如:3.1.2单元可以认为是省略RA的结果。有时会遇上7.6.2三端并联,只有一个电阻RA的无稳电路,这时可把它看成是3.2.1单元电路省掉RB后的变形。

系统分类: 模拟技术
用户分类: 电子电路
标签: 无标签
来源: 整理
发表评论 阅读全文(606) | 回复(0)

0

关于投票
74系列芯片功能大全
74系列芯片功能大全

7400 TTL 2输入端四与非门
7401 TTL 集电极开路2输入端四与非门
7402 TTL 2输入端四或非门
7403 TTL 集电极开路2输入端四与非门
7404 TTL 六反相器
7405 TTL 集电极开路六反相器
7406 TTL 集电极开路六反相高压驱动器
7407 TTL 集电极开路六正相高压驱动器
7408 TTL 2输入端四与门
7409 TTL 集电极开路2输入端四与门
7410 TTL 3输入端3与非门
74107 TTL 带清除主从双J-K触发器
74109 TTL 带预置清除正触发双J-K触发器
7411 TTL 3输入端3与门
74112 TTL 带预置清除负触发双J-K触发器
7412 TTL 开路输出3输入端三与非门
74121 TTL 单稳态多谐振荡器
74122 TTL 可再触发单稳态多谐振荡器
74123 TTL 双可再触发单稳态多谐振荡器
74125 TTL 三态输出高有效四总线缓冲门
74126 TTL 三态输出低有效四总线缓冲门
7413 TTL 4输入端双与非施密特触发器
74132 TTL 2输入端四与非施密特触发器
74133 TTL 13输入端与非门
74136 TTL 四异或门
74138 TTL 3-8线译码器/复工器
74139 TTL 双2-4线译码器/复工器
7414 TTL 六反相施密特触发器
74145 TTL BCD—十进制译码/驱动器
7415 TTL 开路输出3输入端三与门
74150 TTL 16选1数据选择/多路开关
74151 TTL 8选1数据选择器
74153 TTL 双4选1数据选择器
74154 TTL 4线—16线译码器
74155 TTL 图腾柱输出译码器/分配器
74156 TTL 开路输出译码器/分配器
74157 TTL 同相输出四2选1数据选择器
74158 TTL 反相输出四2选1数据选择器
7416 TTL 开路输出六反相缓冲/驱动器
74160 TTL 可预置BCD异步清除计数器
74161 TTL 可予制四位二进制异步清除计数器
74162 TTL 可预置BCD同步清除计数器
74163 TTL 可予制四位二进制同步清除计数器
74164 TTL 八位串行入/并行输出移位寄存器
74165 TTL 八位并行入/串行输出移位寄存器
74166 TTL 八位并入/串出移位寄存器
74169 TTL 二进制四位加/减同步计数器
7417 TTL 开路输出六同相缓冲/驱动器
74170 TTL 开路输出4×4寄存器堆
74173 TTL 三态输出四位D型寄存器
74174 TTL 带公共时钟和复位六D触发器
74175 TTL 带公共时钟和复位四D触发器
74180 TTL 9位奇数/偶数发生器/校验器
74181 TTL 算术逻辑单元/函数发生器
74185 TTL 二进制—BCD代码转换器
74190 TTL BCD同步加/减计数器
74191 TTL 二进制同步可逆计数器
74192 TTL 可预置BCD双时钟可逆计数器
74193 TTL 可预置四位二进制双时钟可逆计数器
74194 TTL 四位双向通用移位寄存器
74195 TTL 四位并行通道移位寄存器
74196 TTL 十进制/二-十进制可预置计数锁存器
74197 TTL 二进制可预置锁存器/计数器
7420 TTL 4输入端双与非门
7421 TTL 4输入端双与门
7422 TTL 开路输出4输入端双与非门
74221 TTL 双/单稳态多谐振荡器
74240 TTL 八反相三态缓冲器/线驱动器
74241 TTL 八同相三态缓冲器/线驱动器
74243 TTL 四同相三态总线收发器
74244 TTL 八同相三态缓冲器/线驱动器
74245 TTL 八同相三态总线收发器
74247 TTL BCD—7段15V输出译码/驱动器
74248 TTL BCD—7段译码/升压输出驱动器
74249 TTL BCD—7段译码/开路输出驱动器
74251 TTL 三态输出8选1数据选择器/复工器
74253 TTL 三态输出双4选1数据选择器/复工器
74256 TTL 双四位可寻址锁存器
74257 TTL 三态原码四2选1数据选择器/复工器
74258 TTL 三态反码四2选1数据选择器/复工器
74259 TTL 八位可寻址锁存器/3-8线译码器
7426 TTL 2输入端高压接口四与非门
74260 TTL 5输入端双或非门
74266 TTL 2输入端四异或非门
7427 TTL 3输入端三或非门
74273 TTL 带公共时钟复位八D触发器
74279 TTL 四图腾柱输出S-R锁存器
7428 TTL 2输入端四或非门缓冲器
74283 TTL 4位二进制全加器
74290 TTL 二/五分频十进制计数器
74293 TTL 二/八分频四位二进制计数器
74295 TTL 四位双向通用移位寄存器
74298 TTL 四2输入多路带存贮开关
74299 TTL 三态输出八位通用移位寄存器
7430 TTL 8输入端与非门
7432 TTL 2输入端四或门
74322 TTL 带符号扩展端八位移位寄存器
74323 TTL 三态输出八位双向移位/存贮寄存器
7433 TTL 开路输出2输入端四或非缓冲器
74347 TTL BCD—7段译码器/驱动器
74352 TTL 双4选1数据选择器/复工器
74353 TTL 三态输出双4选1数据选择器/复工器
74365 TTL 门使能输入三态输出六同相线驱动器
74365 TTL 门使能输入三态输出六同相线驱动器
74366 TTL 门使能输入三态输出六反相线驱动器
74367 TTL 4/2线使能输入三态六同相线驱动器
74368 TTL 4/2线使能输入三态六反相线驱动器
7437 TTL 开路输出2输入端四与非缓冲器
74373 TTL 三态同相八D锁存器
74374 TTL 三态反相八D锁存器
74375 TTL 4位双稳态锁存器
74377 TTL 单边输出公共使能八D锁存器
74378 TTL 单边输出公共使能六D锁存器
74379 TTL 双边输出公共使能四D锁存器
7438 TTL 开路输出2输入端四与非缓冲器
74380 TTL 多功能八进制寄存器
7439 TTL 开路输出2输入端四与非缓冲器
74390 TTL 双十进制计数器
74393 TTL 双四位二进制计数器
7440 TTL 4输入端双与非缓冲器
7442 TTL BCD—十进制代码转换器
74352 TTL 双4选1数据选择器/复工器
74353 TTL 三态输出双4选1数据选择器/复工器
74365 TTL 门使能输入三态输出六同相线驱动器
74366 TTL 门使能输入三态输出六反相线驱动器
74367 TTL 4/2线使能输入三态六同相线驱动器
74368 TTL 4/2线使能输入三态六反相线驱动器
7437 TTL 开路输出2输入端四与非缓冲器
74373 TTL 三态同相八D锁存器
74374 TTL 三态反相八D锁存器
74375 TTL 4位双稳态锁存器
74377 TTL 单边输出公共使能八D锁存器
74378 TTL 单边输出公共使能六D锁存器
74379 TTL 双边输出公共使能四D锁存器
7438 TTL 开路输出2输入端四与非缓冲器
74380 TTL 多功能八进制寄存器
7439 TTL 开路输出2输入端四与非缓冲器
74390 TTL 双十进制计数器
74393 TTL 双四位二进制计数器
7440 TTL 4输入端双与非缓冲器
7442 TTL BCD—十进制代码转换器
74447 TTL BCD—7段译码器/驱动器
7445 TTL BCD—十进制代码转换/驱动器
74450 TTL 16:1多路转接复用器多工器
74451