¿Quién no quisiera tener un aparato que permitiría oír a través de las paredes? El super amplificador que describimos puede ser usado para ello, siendo uno de los montajes de este tipo de "oídos electrónicos" que describimos en nuestro sitio.

La idea de oír a través de las paredes viene de lejos y es explorada en libros de ficción, espionaje y romances.

En el libro "La Sociedad de los Niños Genios", el autor Lev AC Rosen trata de una Universidad en Londres que sólo admitiría adolescentes con vocaciones científicas, o pequeños "genios", que tendrían una preparación especial en las más variadas áreas de la ciencia.

En uno de los capítulos relata la "invención" de uno de ellos, una especie de estetoscopio para oír a través de las paredes.

La novela es de la era de los engranajes y máquinas analíticas, del siglo XVIII, pero hoy con la electrónica, podemos tener eso en la práctica y es exactamente lo que haremos.

El proyecto consiste en un estetoscopio electrónico que, además de servir para oír a través de las paredes, también puede servir para detectar piezas ruidosas en una máquina o motor de coche.

El circuito práctico está formado por un sensible preamplificador de audio para micrófono de electreto usando dos transistores, el cual aplica la señal en un amplificador de potencia que alimenta un auricular.

La alimentación se realiza por pilas comunes y para aumentar la sensibilidad, el micrófono debe montarse en un envoltorio acolchado para ser apoyado en la pared y así concentrar los sonidos que vienen del otro lado.

En una primera posibilidad podemos usar un amplificador con el LM386 como muestra la figura 1.

 

Figura 1 - Uso del LM386
Figura 1 - Uso del LM386 | Haga click en la imagen para ampliar |

 

La placa de circuito impreso para esta versión se muestra en la figura 2.

 

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

 

Para la versión definitiva con el TDA7052 tenemos el circuito mostrado en la figura 3.

 

Figura 3 - Diagrama con el TDA7052
Figura 3 - Diagrama con el TDA7052 | Haga click en la imagen para ampliar |

 

La placa de circuito impreso para esta versión se muestra en la figura 4.

 

Figura 4 - Placa para el TDA7052
Figura 4 - Placa para el TDA7052 | Haga click en la imagen para ampliar |

 

En el montaje de cualquiera de las versiones observe la posición del circuito integrado y de los transistores.

Las polaridades de los capacitores electrolíticos y del micrófono de electreto también deben ser observadas.

Los resistores son de 1/8 W con cualquier tolerancia y los capacitores electrolíticos para 6 V o más de tensión de trabajo.

El auricular debe ser de baja impedancia, pero también se puede utilizar un pequeño altavoz.

En la figura 5 mostramos cómo preparar un cable blindado para la conexión remota del micrófono.

 

Figura 5 - Conexión del micrófono
Figura 5 - Conexión del micrófono | Haga click en la imagen para ampliar |

 

El conjunto se puede instalar en una pequeña caja de plástico.

Una posibilidad interesante para el uso del circuito es en la grabación de sonidos distantes usando un micrófono parabólico (ver los artículos ART098 y ART1576 en el sitio).

En la figura 6 mostramos cómo instalar el micrófono en un reflector.

 

Figura 6 - Uso de un reflector parabólico
Figura 6 - Uso de un reflector parabólico

 

Para utilizar un auricular estéreo necesitamos adaptar un jack, lo que se hace como se muestra en la figura 7.

 

Figura 7 - Adaptación de un auricular estéreo
Figura 7 - Adaptación de un auricular estéreo

 

Para utilizar un micrófono de electreto de tres terminales se debe hacer la adaptación mostrada en la figura 8.

 

Figura 8 - Uso del micrófono de 3 terminales
Figura 8 - Uso del micrófono de 3 terminales

 

Para usar, golpee el micrófono (que debe tener un mamparo acolchado como se muestra en la figura 9) en la pared y ajustar el volumen.

 

Figura 9 - El micrófono
Figura 9 - El micrófono

 

Con este dispositivo el sonido puede ser concentrado y los ruidos que no vengan del otro lado de la pared serán bloqueados.

 

 

CI-1 - TDA7052 - circuito integrado

Q1, Q2- BC548 - transistores NPN de uso general

MIC - micrófono de electreto de dos terminales

S1 - Interruptor simple

B1 - 6 V - 4 pilas pequeñas

C1- 10 uF - capacitor electrolítico

C2, C3 - 4,7 uF - capacitores electrolíticos

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

C5 - 220 uF - capacitor electrolítico

C6 - 100 nF - capacitor de cerámica

R1, R2 - 4k7 ohms - resistores - amarillo, violeta, rojo

R3 - 2M2 ohms - resistor - rojo, rojo, verde

R4 - 470 k ohms - amarillo, violeta, amarillo

R5 - 1 k ohms - resistor - marrón, negro, rojo

R6 - 470 ohms - resistor - amarillo, violeta, marrón

P1 - 10 k ohms - potenciómetro

Varios:

Placa de circuito impreso, jack para auriculares, soporte de pilas, caja para montaje, hilos, soldadura, etc.

 

18.924MBMemory Usage43.33msRequest Duration
Joomla! Version5.2.3
PHP Version8.3.20
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" => 1750550276 "last" => 1750550276...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (85.36KB) (202μs)
  • afterInitialise (1.14MB) (5.69ms)
  • afterRoute (179.16KB) (1.51ms)
  • beforeRenderComponent com_content (100.7KB) (403μs)
  • Before Access::preloadComponents (all components) (33.45KB) (283μs)
  • After Access::preloadComponents (all components) (107.06KB) (466μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (9μs)
  • After Access::preloadPermissions (com_content) (16.22MB) (19.72ms)
  • Before Access::getAssetRules (id:5329 name:com_content.article.10516) (514.65KB) (716μs)
  • After Access::getAssetRules (id:5329 name:com_content.article.10516) (7.38KB) (44μs)
  • afterRenderComponent com_content (390KB) (6.55ms)
  • afterDispatch (2.25KB) (42μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (358.53KB) (1.71ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (353μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (90μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (64.9KB) (1.18ms)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (601μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (62μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.64KB) (186μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (49μs)
  • afterRender (257.75KB) (3.37ms)
  • 1 x After Access::preloadPermissions (com_content) (16.22MB) (45.51%)
    19.72ms
    1 x afterRenderComponent com_content (390KB) (15.12%)
    6.55ms
    1 x afterInitialise (1.14MB) (13.14%)
    5.69ms
    1 x afterRender (257.75KB) (7.77%)
    3.37ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (358.53KB) (3.95%)
    1.71ms
    1 x afterRoute (179.16KB) (3.48%)
    1.51ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (64.9KB) (2.72%)
    1.18ms
    1 x Before Access::getAssetRules (id:5329 name:com_content.article.10516) (514.65KB) (1.65%)
    716μs
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (1.39%)
    601μs
    1 x After Access::preloadComponents (all components) (107.06KB) (1.08%)
    466μs
    1 x beforeRenderComponent com_content (100.7KB) (0.93%)
    403μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (0.81%)
    353μs
    1 x Before Access::preloadComponents (all components) (33.45KB) (0.65%)
    283μs
    1 x afterLoad (85.36KB) (0.47%)
    202μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.64KB) (0.43%)
    186μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.21%)
    90μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (0.14%)
    62μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (0.11%)
    49μs
    1 x After Access::getAssetRules (id:5329 name:com_content.article.10516) (7.38KB) (0.1%)
    44μs
    1 x afterDispatch (2.25KB) (0.1%)
    42μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.02%)
    9μs
21 statements were executed, 5 of which were duplicates, 16 unique11.22ms1.58MB
  • SELECT @@SESSION.sql_mode;32μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 189μ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)185μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `id`,`rules` FROM `incbmx_viewlevels`57μ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` = :guest91μ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`395μ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)319μ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` = 07.64ms1.48MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`342μs2.39KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '10516'188μ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)178μ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`191μ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)234μ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`167μ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 ASC390μ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`169μs3.92KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `name`,`element` FROM `incbmx_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1159μ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)92μs648B/administrator/components/com_finder/src/Indexer/Taxonomy.php:325Copy
  • SELECT * FROM `incbmx_schemaorg` WHERE `itemId` = :itemId AND `context` = :context62μ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)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` = 174μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:465Copy