Detecte fuentes de radiación infrarroja modulada, como controles a distancia, verificando su intensidad y su origen. Este simple detector es bastante sensible y se alimenta con pilas comunes.

El detector que presentamos detecta infrarrojos modulados, reproduciendo la modulación en un pequeño altavoz.

Una de las utilidades posibles es como verificador de funcionamiento de controles remotos, como muestra la figura 1.

 

Figura 1 - Utilizando el investigador
Figura 1 - Utilizando el investigador

 

La sensibilidad del circuito es elevada, gracias al uso de un amplificador operacional de gran ganancia y un foto-transistor común como sensor.

El circuito también puede detectar otras fuentes de luz modulada, pues el sensor no responde sólo a los infrarrojos.

El sensor utilizado puede ser cualquier foto-transistor común, incluso aprovechado de viejos televisores analógicos fuera de uso con control remoto.

Para una mayor selectividad, se puede utilizar un filtro de infrarrojos que se puede encontrar en televisores antiguos delante del sensor.

En la figura 2 tenemos algunos tipos de foto-transistores comunes que se pueden utilizar en este proyecto.

 

Figura 2 - Foto-transistores comunes
Figura 2 - Foto-transistores comunes

 

 

Montaje

En la figura 3 tenemos el diagrama completo del investigador infrarrojo.

 

Figura 3 - Diagrama del investigador infrarrojo
Figura 3 - Diagrama del investigador infrarrojo

 

La placa de circuito impreso para el montaje se muestra en la figura 4.

 

Figura 4- Placa de circuito impreso para el montaje
Figura 4- Placa de circuito impreso para el montaje

 

En el montaje, observe la posición del circuito integrado, del transistor y del foto-transistor.

Los resistores son de 1/8 W con cualquier tolerancia y el capacitor electrolítico para 6 V o más.

El altavoz es pequeño y se puede utilizar una caja como la que se muestra en la figura 5.

 

Figura 5 - Caja para el montaje
Figura 5 - Caja para el montaje

 

En la figura 6 tenemos un emisor infrarrojo que se puede utilizar para probar el investigador.

 

Figura 6 - Un transmisor de infrarrojos de prueba
Figura 6 - Un transmisor de infrarrojos de prueba

 

El par se puede utilizar en un sistema de experimentación de comunicación telegráfica por infrarrojo, bastando sustituir S1 del transmisor por un manipulador.

 

CI-1- 741 - circuito integrado

Q1 - Cualquier foto-transistor

Q2 - BC548 - transistores NPN de uso general

S1 - Interruptor simple

B1 - 9 V - batería

P1 - 2M2 ohms - pote

FTE - 4 o 8 ohms - pequeño altavoz

R1, R2 - 10 k ohms - resistores - marrón, negro, naranja

R3 - 100 k ohms - resistor - marrón, negro, amarillo

R4 - 1 M ohms - resistor - marrón, negro, verde

R5 - 33 ohms - resistor - naranja, naranja, negro

C1 - 220 nF - capacitor de cerámica o poliéster

C2 - 100 uF - capacitor electrolítico

Varios:

Placa de circuito impreso, conector de batería, caja para montaje, hilos, soldadura, etc.

 

Settings18.941MBMemory Usage42.87msRequest Duration
Theme
Open Button Position
Hide Empty Tabs
Autoshow
Reset to defaults
Joomla! Version5.3.2
PHP Version8.3.23
Identityguest
Response200
Templatecassiopeia
Database
Server
mysql
Version
10.5.27-MariaDB
Collation
latin1_swedish_ci
Conn Collation
utf8mb4_general_ci
$_GET
[]
$_POST
[]
$_SESSION
array:1 [ "joomla" => "***redacted***" ]
$_COOKIE
array:1 [ "c2123392c06423339225f3431360b7e6" => "n0ps7e2rlm07teob2ic5kip74n" ]
$_SERVER
array:52 [ "USER" => "apache" "HOME" => "/usr/share/httpd" "SCRIPT_NAME" => "/index.php" "RE...
session
array:3 [ "counter" => 2 "timer" => array:3 [ "start" => 1753453768 "last" => 1753453768...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (83.82KB) (241μs)
  • afterInitialise (1.13MB) (3.33ms)
  • afterRoute (179.87KB) (1.07ms)
  • beforeRenderComponent com_content (100.8KB) (411μs)
  • Before Access::preloadComponents (all components) (33.13KB) (170μs)
  • After Access::preloadComponents (all components) (113.52KB) (395μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (7μs)
  • After Access::preloadPermissions (com_content) (16.24MB) (23.34ms)
  • Before Access::getAssetRules (id:5722 name:com_content.article.10904) (514.65KB) (669μs)
  • After Access::getAssetRules (id:5722 name:com_content.article.10904) (7.38KB) (42μs)
  • afterRenderComponent com_content (356.89KB) (6.2ms)
  • afterDispatch (2.25KB) (44μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (422.47KB) (1.56ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.5KB) (327μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (106μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (54.31KB) (904μs)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (575μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (58μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.64KB) (202μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (68μs)
  • afterRender (257.73KB) (3.05ms)
  • 1 x After Access::preloadPermissions (com_content) (16.24MB) (54.45%)
    23.34ms
    1 x afterRenderComponent com_content (356.89KB) (14.46%)
    6.20ms
    1 x afterInitialise (1.13MB) (7.76%)
    3.33ms
    1 x afterRender (257.73KB) (7.11%)
    3.05ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (422.47KB) (3.64%)
    1.56ms
    1 x afterRoute (179.87KB) (2.5%)
    1.07ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (54.31KB) (2.11%)
    904μs
    1 x Before Access::getAssetRules (id:5722 name:com_content.article.10904) (514.65KB) (1.56%)
    669μs
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (1.34%)
    575μs
    1 x beforeRenderComponent com_content (100.8KB) (0.96%)
    411μs
    1 x After Access::preloadComponents (all components) (113.52KB) (0.92%)
    395μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.5KB) (0.76%)
    327μs
    1 x afterLoad (83.82KB) (0.56%)
    241μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.64KB) (0.47%)
    202μs
    1 x Before Access::preloadComponents (all components) (33.13KB) (0.4%)
    170μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.25%)
    106μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (0.16%)
    68μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (0.14%)
    58μs
    1 x afterDispatch (2.25KB) (0.1%)
    44μs
    1 x After Access::getAssetRules (id:5722 name:com_content.article.10904) (7.38KB) (0.1%)
    42μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.02%)
    7μs
21 statements were executed, 5 of which were duplicates, 16 unique14.42ms1.58MB
  • SELECT @@SESSION.sql_mode;28μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 163μs1.31KBParams/libraries/src/Session/MetadataManager.php:187Copy
  • UPDATE `incbmx_session` SET `guest` = :guest , `time` = :time , `userid` = :user_id , `username` = :username , `client_id` = :client_id WHERE `session_id` = :session_id58μs992BParams/libraries/src/Session/MetadataManager.php:316Copy
  • SELECT `id`,`rules` FROM `incbmx_viewlevels`51μs608B/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` = :guest83μ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`276μs20.2KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `incbmx_content` WHERE `id` = :id73μs1.31KBParams/components/com_content/src/Service/Router.php:289Copy
  • 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)240μ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` = 011.02ms1.48MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`312μs1.77KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:539Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '10904'146μ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)157μ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`226μ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)386μ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`240μ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 ASC415μ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`237μs5.17KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `title` FROM `incbmx_finder_taxonomy` WHERE `parent_id` = 1 AND `state` = 1 AND `access` IN (1,5)107μs648B/administrator/components/com_finder/src/Indexer/Taxonomy.php:325Copy
  • SELECT * FROM `incbmx_schemaorg` WHERE `itemId` = :itemId AND `context` = :context69μs1.55KBParams/plugins/system/schemaorg/src/Extension/Schemaorg.php:406Copy
  • 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)163μ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` = 176μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:517Copy