Probando las fuentes de alimentación api3fs25 / 24R2639 12,2V 48A

Voy a probar un poquito la fuente…
Conecto dos resistencias de 1,1 Ohmios + 1,1 Ohmios en paralelo para que den 0,55 Ohmios y a su vez en paralelo de nuevo con otra igual. La resistencia total es de 0,275 Ohmios. A 12,2V circulará una corriente de unos 44A, cerca del límite de la fuente.
Uso treinta centímetros de cable de 6mm2 de sección para las conexiones de la carga.

Primera prueba, 12,09V medidos en la fuente y 43A (ó 42,9A incertidumbre de medida del amperímetro): 519,9 Watios!!!
42,9A midiendo en fuente

Segunda prueba, 11,97V medidos en la carga y 43A: 514,7 Watios en la carga. Tenemos 120mV de caida de tensión en los cables. A 43A son aproximadamente 5,2W de pérdidas que estarán usándose en calentar el cableado!!!
43A medido en carga

Ahora conecto las entradas SENSE- a GND y SENSE+ a +12V. Esto compensará los 120mV de caída y la tensión en la carga es ahora mas alta: 12,05V. Esto es importante para tener la tensión deseada justo en la carga, pero las pérdidas en el cableado continúan igual, ahora la fuente da 120mV mas que antes para compensarlas.
43A con SENSE

514 W son muchos watios, aunque las resistencias tienen circulación forzada de aire con un ventilador se calientan como una estufa: 209,9 Grados centígrados… y mas que mi termómetro no alcanza a medir:
Temperatura

También he observado que los cables estan a unos 35 grados y la temperatura ambiente es de 21 grados… ahí estan los 5,2W de pérdidas que medía.

Ahora conecto dos fuentes en paralelo y conecto el terminal CURRENT SHARE de una con el de la otra. 12,23V (se nota que trabajan mas descasadas) y 20A una de ellas, la mitad de la carga aproximadamente.
Dos fuentes A

La otra fuente entrega algo mas: 23,7A:
Dos fuentes B

Comprobado: las fuentes responden muy bien cerca del máximo de potencia. Una pena que no haya podido tenerlas unas horas probando, mi carga no soportaría disipar esa potencia durante tanto tiempo.

Usando una fuente de alimentación api3fs25 / 24R2639 12,2V 48A

Han caido en mis manos 4 fuentes de alimentación ACBEL modelo api3fs25 IBM P/N 24R2639 de 12,2V y 48A. Estas fuentes pueden proporcionar hasta 585W en una sola tensión de salida y son de calidad IBM (eran de dos servidores IBM Xseries x336). También pueden encontrarse en EBAY baratas http://www.ebay.es/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=api3fs25&_sacat=0
4 fuentes api3fs25

Para poder usarlas lo primero es analizarlas externamente… En una cara tienen un conector de aimentación para la entrada 220V con dos LED verdes AC y DC.
Parte trasera

En la otra un conector de flanco de tarjeta de doble cara con 20 contactos se señal y 6 contactos de potencia.
Parte delantera

Esta claro que será necesario buscar mas información para poder encenderlas al menos. Buscando api3fs25 y 24R2639 en google encuentro que son muy apreciadas como alimentadores para cargadores de baterías de RC:
http://www.rcgroups.com/forums/showthread.php?t=1005309&page=74

En www.rcgroups.com hay «algo» de información:
Fuente acbel

En principio la encienden conectando A8 con A10, pero otro autor usa A8 con B4: http://piercecollegefoundation.com/software/18539

¿Quien lo hace bien…? Porque yo he probado los dos métodos y funcionan!.

Vamos con un poco de ingenieria inversa, esta fuente es cambiable en caliente (HOT-SWAP) y ademas puede paralelizarse con otras (current sharing), o sea que será bastante complicadilla.
Lo primero es abrir la fuente para sacar un esquema parcial de las áreas que interesan:
Fuente abierta

El conector de flanco de tarjeta esta mayormente conectado a dos conectores J1 y J2 que unen la placa de potencia de la fuente con una pequeña placa montada perpendicularmente que contiene la elecrónica de control, regulación y protección.
Placa de regulacion

Esa placa contiene un PIC16F73, supongo que para controlar las funciones de diagnóstico. El controlador PWM es un UCC3895. También lleva un controlador para la conpartición de corriente (load share controller) uc3907.

Lo mejor es dessoldar la placa para poder hacer el esquema mas comodamente, aunque luego tenga que volverla a soldar en su lugar.
Placa dessodada

El borrador del esquema parcial de la zona digital de la placa es este (algun fallo en la polaridad de los transistores??? … es un borrador):
Zona digital

De este esquema se puede deducir que la fuente lleva varias entradas y salidas de diagnóstico y comunicaciones….
¿Era correcto conectar A8 a A10 ó B4 para encenderla? NO.
La conexión A8 es, efectivamente, la señal «Power ON». Va conectada a una pata del PIC de uso general (Pin 28, RB7) y tiene un pullup (3K a +5V). En estas condiciones dejarla al aire introduce un 1 en el PIC y la fuente se mantiene apagada.
Introduciendo un 0 debería encenderse, comno así ocurre, pero ni A10 ni B4 son terminales de masa. B4 es SENSE- que es «casi» masa pero usarlo para encender la fuente introducirá un voltaje extraño en SENSE- y hará que varíe la regulación de tensión.
A10 es una entrada/salida de señalización, se pone a 0 cuando se enciende el LED verde DC de la trasera. Esta salida va conectada al colector de un transistor NPN y la base a la pata 17 del PIC (RB6) y un transistor NPN. Otro transistor enciende el LED verde. Para que el LED verde se encienda es necesario conectar un pullup externo, de forma que esta patilla acual como salida de señalicación y entrada para controlar el LED (si el PIC de la fuente lo permite).

La forma correcta de encender la fuente es unir A8 con B10.

B10 es GND, la misma GND que la del conector de potencia. El server identifica que la fuente esta conectada cuando ve esta conexión a masa.

B9 y B8 son salidas +5V VSB de 200mA. Estas salidas estan siempre presentes mientas este alimentada la fuente, aunque no este encendida.

A10 es la salida de la señal DC (igual que el LED trasero DC) y A9 es la salida de la señal AC (igual que el LED trasero AC)

A2 (pin 17 del PIC) y A3 (pin 16 del PIC) son ENTRADAS que indican a la fuente su posición en en server 00 la de la derecha y 01 la de la izquierda (visto desde la parte trasera del server). Sirven para seleccionar la dirección de la fuente en el bus I2C.

A4 (pin 22 del PIC) y A7 (pin 18 del PIC) son entradas /salidas de control (A4 podría ser /RESET) conectadas a la lógica del server.

A5 (pin 14 del PIC) y A6 (pin 15 del PIC) son SCL y SDA respectivamente. Posiblemente un SMBUS basado en I2C que se suele usar en el control de energía de los ordenadores. He probado a interrogarlo con el BusPirate y ha respondido a una direccion, que dependiendo del estado de A2 y A3, es: (en binario 001000A2A3) o sea e 0x20 a 0x23.
Esto solo si se mantiene A4 a 0, si se pone a 1 responde también a otra dirección: (en binario 010100A2A3) o sea e 0x50 a 0x53.
No he conseguido que esa dirección me responda a ningún comando, posiblemente el protocolo usa PEC, un chequeo de integridad de mensajes basado en CRC8 y yo no estoy enviando mensajes válidos…

B1, B2 y B3 van en paralelo en las dos fuentes que montanlos servers, son salidas de estado en colector abierto. La B1 se pone a 0 cuando la fuente arranca, y continua a 0 hasta que se quita tensión. Poniendo A4 a 0 se apaga (es A4 algún tipo de RESET?). No he investigado mas.

Este es el PINOUT del conecor de flanco de tarjeta, y del conector ICSP para programar el PIC:
Pinout API3FS25

La parte analógica es bastante compleja y solo he obtenido el esquema de la parte que me interesaba para la regulación de tensión.
Regulación de tensión

En los foros de RC he leído acerca de métodos para variar la tensión de salida (que funcionan) pero ¿son adecuados?.
Variar la tensión en www.rcgroups.com
Variando la tensión

Para aumentar la tensión de salida recomiendan conectar una resistencia de 33K entre dos puntos determinadados (color verde en la imagen).
Según mi esquema eléctrico estos puntos corresponden a los extremos de la resistencia de 6K (que puede verse en el esquema rotulada como 76b). La resistencia de 33K quedararía en paralelo con esta de 6K resultando una resistencia equivalente de 5,07K. Con el potenciómetro el mínimo (máxima tensión) la salida sería de 14,5V.
Esto es correcto, es la forma adecuada de aumentar el máximo de la tensión de salida. No se verá afectada la calidad de la regulación, aunque hay que tener en cuenta que los condensadores de la fuente son de 16V y estaríamos bastante cerca del límite de trabajo y se acortará su vida útil.
Para disminuírla recomiendan conectar una resistencia de 10K entre la pata 10 del UC3907 y un extremo del potenciómetro de regulación de tensión. Aunque funciona esto no es correcto porque la pata 10 del UC3907 es la alimentación del mismo, que viene de otra sección de la fuente de alimentación. Estamos introduciendo en el circuito de regulación de una fuente una tensión proveniente de otra fuente por lo que van a interferirse. Variará la tensión de salida al variar la tensión de la fuente interna, cuando deberían ser independientes entre si.
La forma correcta de disminuír la tensión mínima de la fuente es sustituir el potenciómetro de 500 ohmios por otro de otro valor. Por ejemplo con uno de 10K se puede conseguir que la tensión mínima baje hasta 6,5V. Por desgracia las otras tensiones internas de la fuente también bajan y la fuente se vuelve inestable en estas condiciones, llegando a no arrancar. Pero 7,2V si es una tensión bastante baja a la que la fuente funciona bien.

Regulacion
Eliminando la resistencia SMD de 6K y conectando un potenciómetro de 10K con una pareja de resistencias en serie de 2K2 y 3K3 en los puntos que se ve en la foto se consigue una variación de tensión de 6,13V a 13,57V.

A1 sirve para que las fuentes se coordinen en la corriente que entregan cuando se ponen en paralelo «current share». Si se van a conectar varias fuentes en paralelo hay que conectar entre sí todas las trata de unir todas las conexiones A1 de todas las fuentes. De esta forma se coordinan y si una tiene algunos milivoltios mas de regulación de tensión no entrega mas corriente, sino que la demanda de corriente se balancea autmáticamente entre todas las fuentes. Este trabajo lo controla el integrado UC3907.

A4 y A7 son SENSE- y SENSE+. Si no se usan no pasa nada, estan conctadas iternamente a GND y +12V mediante series de resistencias de 10 ohmios. Pero si queremos tener un control preciso de la tensión en el punto de conumo debemos unir SENSE- con GND y SENSE+ con +12V justo en el punto de consumo (carga). Estas señales son las que realimentan al circuito de regulación de tensión y la fuente intentará mantener la tensión programada justo en el punto donde se conecten SENSE- y SENSE+ independientemente de la tensión de salida. De esta forma se compensa la caida de tensión en los cables.

He construido unos conectores de flanco de tarjeta macho con unos trozos de circuito impreso de doble cara y una fresadora de PCBs.
Conectores

Listo para probar:
Conectores listos

El esquema de prueba es este:
Esquema de prueba

Para probar la fuente «con chicha» dispongo de dos resistencias bobinadas de 2,2 Ohmios de unos cientos de watios. Conectándolas en paralelo tengo una resistencia de 1,1 Ohmios que a 12,2V son 11,09A, pero tienen que disipar 135W !!!. Con un ventilador de PC ayudaré a disipar el calor para poder probar durante unos minutos…

Listo para jugar:
Probando...

Mini curso de ingenieria inversa 1

Mientras que la ingeniería convencional nos permite diseñar un producto pasando por su un diseño práctico a partir de una idea, la ingenieria inversa (reverse engineering) sirve para realizar el trabajo a la inversa: partiendo de un producto (un chisme que tienes sobre la mesa) obtenemos su diseño práctico (el esquema eléctrico, sus especificaciones técnicas, incluso su programa interno) y podemos llegar a la idea original.
La ingeniería inversa no es una cosa que se estudie de forma reglada, pero es facil de aprender si tienes unos buenos conocimientos de ingeniería convencional. Yo voy a hablar un poquito de la ingeniería inversa de dispositivos electrónicos. Para poder entender los conceptos será necesario tener buenos conocimientos de electricidad y electrónica.

La necesidad: ¿Por que razón vamos a usar ingeniería inversa sobre un dispositivo electrónico? Hay muchas, la principal es no tener la información técnica necesaria para su uso o reparación. También podemos desear mejorarlo, copiarlo, o anular alguna función no deseada. Para realizar cualquiera de estas operaciones primero necesitamos tener el esquema eléctrico del dispositivo. Encontrar la polaridad de la clavija del gadget recién comprado para acoplarle un alimentador es ingeniería inversa básica.

Las herramientas: Para hacer un análisis pasivo (sin alimentar) solo necesitaremos una buena fuente de luz difusa para que no haga sombras, una lupa (sobre todo para circuitos SMD), un medidor de continuidad (un SuperProbe?) y un polímetro.
Por supuesto papel y lapiz. Si, lápiz, habrá que borrar mucho…
Para anlalisis activos (con el circuito alimentado) o para analizar protocolos etc serán necesarias otras herramientas mas sofisticadas, osciloscopio, analizador lógico etc…

Un caso práctico:
He comprado recientemente en DealExtreme este reloj-voltímetro-termómetro: http://dx.com/p/c-022-3-in-1-red-digital-led-voltmeter-thermometer-clock-223786 por solo 4,38€.
El chisme es interesante y barato pero, como ya avisan en DX, viene sin manual. Googleando su modelo «C-022» no aparece nada, ni por «dx clock voltmeter» etc. Estoy solo con el circuito. Conectarlo no es dificil: un + y un – serigrafiados en la PCB.
Sin embargo solo mide de 7V a 15V de la propia tensión con que se alimenta. Me gustaría medir otra tensión distinta… ¿Como lo hago?. ¿Y si quiero medir una temperatura remota?.
Necesito su esquema eléctrico. La terea no es demasiado dificil, es una pequeña PCB con un integrado TSSOP20 y otro SO8, una batería, un display de 4 dígitos y algunos componentes mas…
Reloj-voltimetro-termometro C-022
Empezamos
Primero: Identificar los componentes, si la PCB es de 2, 4 o 6 capas (cuantas mas capas mas dificil, sobre todo si tiene vias ciegas, entonces la cosa se complica muchísimo y habría que usar otras herraientas…), los conectores etc.
Segundo: hay que identificar bloques funcionales, para cada uno de ellos usaremos distintos métodos deductivos para obtener el esquema. No nos basta con el esquema simple, tenemos que identificar polaridades, tipos de señales etc.

Bloques C-022

Alimentación Es el mejor bloque funcional por el que empezar. Para ello comenzaremos por identificar el conector de alimentación… si no es fácil de identificar (por ejemplo porque se alimenta desde un conector múltiple) buscaremos un plano de masa y a partir de él identificaremos la MASA del circuito. Las pistas de alimentación suelen ser gruesas gruesas, pero pueden confundirse con señales de potencia. También suelen estar desacopladas con condensadores polarizados y filtradas con bobinas de pocos microhenrios y alta corriente. Generalmente la alimentación «bruta» suele acabar en distintos reguladores de tensión. Los condensadores polarizados suelen tener el negativo a masa (cuidado con las fuentes negativas!!). Vamos siguiendo con el medidor de continuidad desde el supuesto positivo de la alimentación (uno de los dos pines de alimentación) hasta el regulador de tensión.
Observamos que hay un par de resistencias conectadas a la alimentación sin regular. Posiblemente es el divisor resistivo para medir la alimentación en la función voltímetro.
Procesador. En este caso no tenemos identificación del procesador, nos limitamos a dibujar el cableado entre el procesador y los pulsadores, el display y el chip SO8 que hay bajo la batería que es el RTC (DS1302).
Observamos otro divisor resistivo, este usa un extraño componente en forma de gota. Se trata de una termoresistencia (al medirla da 5K a 20ºC). Posiblemente se trate del sensor de temperatura para la función termómetro.
La batería está conectada con el RTC DS1302. Podemos decargar el datasheet: DS1302.pdf El cilindro metálico de la derecha será el cristal de 32.768Khz y los dos chips SMD los condensadores del circuito oscilador.
Este es el borrador del esquema obtenido:
Borrador-Esquema C-022
Puede mejorarse un poco:
Esquema KiCad C-022
Ahora vamos a hacer un poco de magia googleiana. ¿Es posible identificar el procesador? Seria muy interesante para poder reprogramarlo…
¿Que sabemos de él? Sabemos que se alimenta por los pines 7- y 9+. También tiene unos condensadore entre los pines 4 y 8 y masa… y su encapsulado es TSSOP20. Vamos a buscar en google microcomputadores o microcontroladores en TSSOP20 a ver que sale.
Ya tengo varios candidatos: MC9S085F4, 87LPC76, PIC16F6xx, MSP430, ATTYNY87167, MSP430G2 y STM85S103F.
Comparando el cableado del borrador con las datasheets de los micros anteriores no queda duda: es un STM8S103F:
STM85S103F
Todo coincide, la alimentación, los condensadores a masa son uno para el reset y otro para el regulador interno, los dos divisores encontrados estan conectados a dos entradas analógicas…
Faltaría conectarlo a un grabador para ver si lo identifica… Desgraciadamente mi grabador, que soporta mas de 10.000 dispositivos, necesita un accesorio para este micro, que no tengo… (también es mala suerte!!).
Al menos al tener identificadas las entradas de tensión y temperatura ya podemos hacer un análisis activo para ver el escalado de estas entradas y poder usarlas de otra manera.
Eso para otro día.

Grabador de EPROM para ZX Spectrum (1985)

Historia de un abuelo informático

Zx Spectrum 48K (Wikimedia)

Estamos en el año 1985 y yo tengo 15 años, mi padre me ha regalado un ZX Spectrum con la esperanza de que deje de acudir a casa de un amigo a trastear con su ORIC-ATMOS.

El spectrum me parece peor que el oric y usaba un Z80 (yo ya había comenzado a programar en ensamblador el R6502) sin embargo el zx spectrum tiene muchísimas ventajas: una comunidad enorme de usuarios, programadores y desarrolladores.
Había comenzado a comprar la revista Microhobby (todavía conservo desde el numero 1 hasta no recuerdo cual) y a animarme con sus programas, cursos y esquemas.

En los números 35, 36 37 y 38 de la primera época de la revista aparece un esquema interesante y su correspondiente programa de control: un grabador de EPROM.
Entremos en situación: la carga de programas en los ordenadores de esa época era mediante cintas de cassette a velocidades entre 600 y 1200 bps (esta última velodidad era la usada por el spectrum) y con muchos fallos. Una verdadera desesperación. El grabador de EPROM (yo tenía muchas EPROM 2764 de 8Kbytes procedentes de mis desguaces electrónicos) era la solución ideal para cargar programas de forma instantánea.
Solo necesitaba un pequeño programa cargador en cinta mediante el que leía la EEPROM a la memoria del spectrum. Instantáneo. Hasta conseguí alguna 27256 y 27512 (32K y 64K, una enormidad para la época).

Claro, que con 15 años y viviendo en un pueblo de 3000 habitantes no tenía acceso a medios técnicos sofisticados para construírlo (y menos a dinero para comprarlo, o comprar piezas) así que, como pude, construí esto:

Grabador de EPROM para Spectrum

Grabador de EPROM para Spectrum

Todos los componentes son reciclados de placas electrónicas de máquinas tragaperras, el soldador que utilicé fué uno de calderero de 60W (comprado en la ferretería local) y los hilos de conexionado son de pares telefónicos. La base no es circuito impreso de baquelita, es cartón de las tapas de los cuadernos de clase, que taladraba con un punzón para pasar las patillas de los componentes. Rústico pero funcionaba!!

Cableado del grabador de EPROM

Para borrar las memorias bastaba ponerlas al sol directo durante un par de días. Todavía conservo mi EEPROM mas preciada (de las que tenía dos copias, la seguridad ante todo): la que contiene el software de grabación y el ensamblador Z80.
Con este grabador programé la EPROM de mi primer ordenador autoconstruido (también sobre cartón y con hilos telefónicos) con Z80, 1K de RAM y 32 displays de 7 segmentos. Desgraciadamente lo desguacé unos años después para reutilizar sus componentes.

El zx-spectrum no esta muerto, todavía vive en la red en las páginas de los nostálgicos:

Microhobby

Hardware del spectrum

Programas de microhobby para Spectrum

Spectrum +3

El Spectrum en el siglo 21

Elemetos usables como ruedas

Pagina pendiente de terminar – EN CONSTRUCCION