Describimos un efecto de luces parpadeantes que cambia el orden de los intermitentes de tres conjuntos de lámparas incandescentes con efectos interesantes para decoración, bailes, escenarios, etc. El circuito es sencillo de montar y hace uso de componentes comunes.

   Si bien las lámparas incandescentes están cayendo en desuso (ya no se fabrican para iluminación) todavía podemos encontrar los tipos de colores para decoración y para aplicaciones especiales como hornos y refrigeradores.

   Pues bien, lo que proponemos en este artículo es el montaje de un sistema que simula el efecto secuencial con un falso contador usando lámparas de neón.

   Este contador se utiliza para disparar SCR que pueden controlar una buena cantidad de lámparas.

   También damos la posibilidad de controlar las lámparas en onda completa utilizando un puente de diodos.

 

   Como funciona

   El circuito consiste en un conjunto de osciladores de relajación con lámparas neon donde la frecuencia de cada uno es determinada por los capacitores asociados.

   Sin embargo, estos osciladores no son autónomos, pues funcionan solamente cuando el oscilador anterior no está conduciendo.

   Así, tenemos una interdependencia de los osciladores que produce un efecto interesante similar a una secuencia, pero con cambios.

   La señal de cada oscilador de relajación controla un SCR con buena capacidad de corriente.

   Estos SCR tienen como carga una o más lámparas que forman la secuencia de efectos.

   

Montaje

   En la figura 1 tenemos entonces el diagrama completo del aparato.

 

   Figura 1 - Diagrama completo del aparato
   Figura 1 - Diagrama completo del aparato | Haga click en la imagen para ampliar |

 

   El montaje se puede realizar sobre la base de una placa de circuito impreso como la que se muestra en la figura 2.

 

Figura 2 - Placa para el montaje
Figura 2 - Placa para el montaje | Haga click en la imagen para ampliar |

 

   Observe que los SCR están dotados de disipadores de calor.

   Los SCR deben ser sufijos B o D si la red es de 110 V y D si la red es de 220 V.

   Las lámparas neón son comunes NE-2H o equivalentes y los resistores de 1/8 W.

   Los diodos son los 1N4004 si la red es de 110 V y 1N4007 si la red es de 220 V.

   Los capacitores son de poliéster con al menos 100 V de tensión de trabajo.

   En la figura 3 tenemos la manera de conectar series de lámparas a un efecto más amplio.

 

   Figura 3 - Conexión de las lámparas
   Figura 3 - Conexión de las lámparas | Haga click en la imagen para ampliar |

 

   

El control es de media onda, lo que quiere decir que las lámparas se encienden con la mitad de su brillo normal.

   Para un control de onda completa hasta 100 W de lámparas se puede utilizar un puente rectificador con cada SCR con la configuración mostrada en la figura 4.

 

   Figura 4 - Puente para onda completa
   Figura 4 - Puente para onda completa | Haga click en la imagen para ampliar |

 

   Para probar y usar el aparato, basta con conectar la alimentación y observar las luces de las lámparas.

   Los cambios de frecuencia pueden ser obtenidos con alteración de los valores de los capacitores.

   

SCR1, SCR2, SCR3 - TIC106B o D - diodos controlados de silicio

D1, D2, D3 - 1N4004 o 1N4007 - diodos rectificadores

X1, X2 X3 - lámparas incandescentes - ver texto

NE-1, NE-2, NE-3 - lámparas neón NE-2H o equivalentes

F1 - Fusible de 5 A

S1 - Interruptor simple

C1, C2., C3 - 470 nF - capacitores de poliéster

R1, R4, R7 - 47 k ohms - resistores - amarillo, violeta, naranja

R2, R6, R8 - 22 k ohms - resistores - rojo, rojo, naranja

R3, R5, R9 - 470 k ohms - resistores - amarillo, violeta, amarillo

 

Varios:

Placa de circuito impreso, caja para montaje, radiadores para los SCR, hilos, soldadura, etc.

 

18.9MBMemory Usage59.33msRequest Duration
Joomla! Version5.2.3
PHP Version8.3.16
Identityguest
Response200
Templatecassiopeia
Database
Server
mysql
Version
10.5.22-MariaDB
Collation
latin1_swedish_ci
Conn Collation
utf8mb4_general_ci
$_GET
[]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
[]
$_SERVER
array:51 [ "USER" => "apache" "HOME" => "/usr/share/httpd" "SCRIPT_NAME" => "/index.php" "RE...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1743701184 "last" => 1743701184...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (85.73KB) (242μs)
  • afterInitialise (1.14MB) (4.1ms)
  • afterRoute (179.16KB) (1.06ms)
  • beforeRenderComponent com_content (100.65KB) (512μs)
  • Before Access::preloadComponents (all components) (33.45KB) (245μs)
  • After Access::preloadComponents (all components) (107.06KB) (562μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (11μs)
  • After Access::preloadPermissions (com_content) (16.19MB) (34.58ms)
  • Before Access::getAssetRules (id:13009 name:com_content.article.17032) (514.65KB) (1.04ms)
  • After Access::getAssetRules (id:13009 name:com_content.article.17032) (7.38KB) (51μs)
  • afterRenderComponent com_content (382.31KB) (7.56ms)
  • afterDispatch (2.25KB) (65μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.33KB) (2.21ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (489μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (99μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (64.98KB) (1.31ms)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (685μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.39KB) (71μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.39KB) (260μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (56μs)
  • afterRender (257.73KB) (3.99ms)
  • 1 x After Access::preloadPermissions (com_content) (16.19MB) (58.29%)
    34.58ms
    1 x afterRenderComponent com_content (382.31KB) (12.74%)
    7.56ms
    1 x afterInitialise (1.14MB) (6.91%)
    4.10ms
    1 x afterRender (257.73KB) (6.73%)
    3.99ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.33KB) (3.72%)
    2.21ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (64.98KB) (2.2%)
    1.31ms
    1 x afterRoute (179.16KB) (1.79%)
    1.06ms
    1 x Before Access::getAssetRules (id:13009 name:com_content.article.17032) (514.65KB) (1.75%)
    1.04ms
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (1.15%)
    685μs
    1 x After Access::preloadComponents (all components) (107.06KB) (0.95%)
    562μs
    1 x beforeRenderComponent com_content (100.65KB) (0.86%)
    512μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (0.82%)
    489μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.39KB) (0.44%)
    260μs
    1 x Before Access::preloadComponents (all components) (33.45KB) (0.41%)
    245μs
    1 x afterLoad (85.73KB) (0.41%)
    242μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.17%)
    99μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.39KB) (0.12%)
    71μs
    1 x afterDispatch (2.25KB) (0.11%)
    65μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (0.09%)
    56μs
    1 x After Access::getAssetRules (id:13009 name:com_content.article.17032) (7.38KB) (0.09%)
    51μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.02%)
    11μs
21 statements were executed, 5 of which were duplicates, 16 unique19.98ms1.57MB
  • SELECT @@SESSION.sql_mode;32μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 168μs1.3KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • INSERT INTO `incbmx_session` (`session_id`,`guest`,`time`,`userid`,`username`,`client_id`) VALUES (:session_id, :guest, :time, :user_id, :username, :client_id)145μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `id`,`rules` FROM `incbmx_viewlevels`49μs656B/libraries/src/Access/Access.php:955Copy
  • SELECT `b`.`id` FROM `incbmx_usergroups` AS `a` LEFT JOIN `incbmx_usergroups` AS `b` ON `b`.`lft` <= `a`.`lft` AND `b`.`rgt` >= `a`.`rgt` WHERE `a`.`id` = :guest71μs1.64KBParams/libraries/src/Access/Access.php:868Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `incbmx_categories` AS `s` INNER JOIN `incbmx_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`284μs20.2KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `incbmx_assets` WHERE `name` IN (:preparedArray1,:preparedArray2,:preparedArray3,:preparedArray4,:preparedArray5,:preparedArray6,:preparedArray7,:preparedArray8,:preparedArray9,:preparedArray10,:preparedArray11,:preparedArray12,:preparedArray13,:preparedArray14,:preparedArray15,:preparedArray16,:preparedArray17,:preparedArray18,:preparedArray19,:preparedArray20,:preparedArray21,:preparedArray22,:preparedArray23,:preparedArray24,:preparedArray25,:preparedArray26,:preparedArray27,:preparedArray28,:preparedArray29,:preparedArray30,:preparedArray31,:preparedArray32,:preparedArray33,:preparedArray34,:preparedArray35,:preparedArray36,:preparedArray37,:preparedArray38,:preparedArray39)342μs7.44KBParams/libraries/src/Access/Access.php:357Copy
  • SELECT `id`,`name`,`rules`,`parent_id` FROM `incbmx_assets` WHERE `name` LIKE :asset OR `name` = :extension OR `parent_id` = 016.31ms1.46MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`371μs2.39KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '17032'179μs48B/libraries/src/Table/Table.php:1348Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `incbmx_content` AS `a` INNER JOIN `incbmx_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `incbmx_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `incbmx_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `incbmx_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `incbmx_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)174μs22.13KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `incbmx_categories` AS `s` INNER JOIN `incbmx_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`206μs3.92KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `m`.`tag_id`,`t`.* FROM `incbmx_contentitem_tag_map` AS `m` INNER JOIN `incbmx_tags` AS `t` ON `m`.`tag_id` = `t`.`id` WHERE `m`.`type_alias` = :contentType AND `m`.`content_item_id` = :id AND `t`.`published` = 1 AND `t`.`access` IN (:preparedArray1,:preparedArray2)266μs3.98KBParams/libraries/src/Helper/TagsHelper.php:388Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `incbmx_categories` AS `s` INNER JOIN `incbmx_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`185μs3.92KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT DISTINCT a.id, a.title, a.name, a.checked_out, a.checked_out_time, a.note, a.state, a.access, a.created_time, a.created_user_id, a.ordering, a.language, a.fieldparams, a.params, a.type, a.default_value, a.context, a.group_id, a.label, a.description, a.required, a.only_use_in_subform,l.title AS language_title, l.image AS language_image,uc.name AS editor,ag.title AS access_level,ua.name AS author_name,g.title AS group_title, g.access as group_access, g.state AS group_state, g.note as group_note FROM incbmx_fields AS a LEFT JOIN `incbmx_languages` AS l ON l.lang_code = a.language LEFT JOIN incbmx_users AS uc ON uc.id=a.checked_out LEFT JOIN incbmx_viewlevels AS ag ON ag.id = a.access LEFT JOIN incbmx_users AS ua ON ua.id = a.created_user_id LEFT JOIN incbmx_fields_groups AS g ON g.id = a.group_id LEFT JOIN `incbmx_fields_categories` AS fc ON fc.field_id = a.id WHERE ( (`a`.`context` = :context AND (`fc`.`category_id` IS NULL OR `fc`.`category_id` IN (:preparedArray1,:preparedArray2,:preparedArray3)) AND `a`.`access` IN (:preparedArray4,:preparedArray5)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray6,:preparedArray7)) AND `a`.`state` = :state) AND (`a`.`group_id` = 0 OR `g`.`state` = :gstate) AND `a`.`only_use_in_subform` = :only_use_in_subform ORDER BY a.ordering ASC413μs4.81KBParams/libraries/src/MVC/Model/BaseDatabaseModel.php:164Copy
  • SELECT `c`.`id`,`c`.`asset_id`,`c`.`access`,`c`.`alias`,`c`.`checked_out`,`c`.`checked_out_time`,`c`.`created_time`,`c`.`created_user_id`,`c`.`description`,`c`.`extension`,`c`.`hits`,`c`.`language`,`c`.`level`,`c`.`lft`,`c`.`metadata`,`c`.`metadesc`,`c`.`metakey`,`c`.`modified_time`,`c`.`note`,`c`.`params`,`c`.`parent_id`,`c`.`path`,`c`.`published`,`c`.`rgt`,`c`.`title`,`c`.`modified_user_id`,`c`.`version`, CASE WHEN CHAR_LENGTH(`c`.`alias`) != 0 THEN CONCAT_WS(':', `c`.`id`, `c`.`alias`) ELSE `c`.`id` END as `slug` FROM `incbmx_categories` AS `s` INNER JOIN `incbmx_categories` AS `c` ON (`s`.`lft` <= `c`.`lft` AND `c`.`lft` < `s`.`rgt`) OR (`c`.`lft` < `s`.`lft` AND `s`.`rgt` < `c`.`rgt`) WHERE (`c`.`extension` = :extension OR `c`.`extension` = 'system') AND `c`.`access` IN (:preparedArray1,:preparedArray2) AND `c`.`published` = 1 AND `s`.`id` = :id ORDER BY `c`.`lft`255μs3.92KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `name`,`element` FROM `incbmx_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1158μs1.89KB/administrator/components/com_finder/src/Helper/LanguageHelper.php:135Copy
  • SELECT `title` FROM `incbmx_finder_taxonomy` WHERE `parent_id` = 1 AND `state` = 1 AND `access` IN (1,5)101μs648B/administrator/components/com_finder/src/Indexer/Taxonomy.php:325Copy
  • SELECT * FROM `incbmx_schemaorg` WHERE `itemId` = :itemId AND `context` = :context75μs1.55KBParams/plugins/system/schemaorg/src/Extension/Schemaorg.php:403Copy
  • SELECT `a`.`id`,`a`.`asset_id`,`a`.`title`,`a`.`alias`,`a`.`introtext`,`a`.`fulltext`,`a`.`state`,`a`.`catid`,`a`.`created`,`a`.`created_by`,`a`.`created_by_alias`,`a`.`modified`,`a`.`modified_by`,`a`.`checked_out`,`a`.`checked_out_time`,`a`.`publish_up`,`a`.`publish_down`,`a`.`images`,`a`.`urls`,`a`.`attribs`,`a`.`version`,`a`.`ordering`,`a`.`metakey`,`a`.`metadesc`,`a`.`access`,`a`.`hits`,`a`.`metadata`,`a`.`featured`,`a`.`language`,`fp`.`featured_up`,`fp`.`featured_down`,`c`.`title` AS `category_title`,`c`.`alias` AS `category_alias`,`c`.`access` AS `category_access`,`c`.`language` AS `category_language`,`fp`.`ordering`,`u`.`name` AS `author`,`parent`.`title` AS `parent_title`,`parent`.`id` AS `parent_id`,`parent`.`path` AS `parent_route`,`parent`.`alias` AS `parent_alias`,`parent`.`language` AS `parent_language`,ROUND(`v`.`rating_sum` / `v`.`rating_count`, 1) AS `rating`,`v`.`rating_count` AS `rating_count` FROM `incbmx_content` AS `a` INNER JOIN `incbmx_categories` AS `c` ON `c`.`id` = `a`.`catid` LEFT JOIN `incbmx_content_frontpage` AS `fp` ON `fp`.`content_id` = `a`.`id` LEFT JOIN `incbmx_users` AS `u` ON `u`.`id` = `a`.`created_by` LEFT JOIN `incbmx_categories` AS `parent` ON `parent`.`id` = `c`.`parent_id` LEFT JOIN `incbmx_content_rating` AS `v` ON `a`.`id` = `v`.`content_id` WHERE ( (`a`.`id` = :pk AND `c`.`published` > 0) AND (`a`.`publish_up` IS NULL OR `a`.`publish_up` <= :publishUp)) AND (`a`.`publish_down` IS NULL OR `a`.`publish_down` >= :publishDown) AND `a`.`state` IN (:preparedArray1,:preparedArray2)211μs22.17KBParams/components/com_content/src/Model/ArticleModel.php:215Copy
  • SELECT SUM(CASE WHEN `a`.`next_execution` <= :now THEN 1 ELSE 0 END) AS due_count,SUM(CASE WHEN `a`.`locked` IS NULL THEN 0 ELSE 1 END) AS locked_count FROM `incbmx_scheduler_tasks` AS `a` WHERE `a`.`state` = 180μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:465Copy