Con este control usted puede utilizar palmas, silbidos o incluso su voz para controlar un equipo electrónico o automatismo. El circuito es sensible, sencillo de montar y utiliza componentes comunes de bajo costo.

   El circuito que describimos tiene un micrófono sensible que, al captar un sonido más fuerte, ajustado en un control de sensibilidad, acciona un relé que conecta o desconecta una carga externa.

   El circuito tiene una acción biestable, es decir, con un sonido acciona y con el sonido siguiente se apaga la carga.

   La alimentación puede ser hecha por pilas o por fuente, dependiendo de la aplicación deseada.

   En la figura 1 tenemos la forma de señales que encontramos en los diversos puntos del circuito.

 

   Figura 1 - Señales del circuito
   Figura 1 - Señales del circuito

 

   

La señal de un micrófono de cristal o piezoeléctrico se aplica a un amplificador operacional cuya ganancia se ajusta en P1.

   Esta señal, después de amplificado, sirve para accionar un monoestable con el conocido 555, el cual produce un pulso unido de corta duración para el control del paso siguiente.

   La etapa siguiente consiste en un biestable con el 4013, que divide por dos la frecuencia de entrada, para tener la alternancia entre encender y apagar el relé.

   En la salida de este circuito se conecta un transistor que tiene por carga de colector el relé que debe ser accionado.

 

Montaje

   En la figura 2 tenemos una fuente de alimentación para el circuito, proporcionando 6 V.

 

   Figura 2 - Fuente de 6 V
   Figura 2 - Fuente de 6 V

 

   

Si se utiliza relé de 12 V, la fuente puede ser cambiada a esta tensión con el cambio del transformador y del regulador de tensión por un 7812.

   En la figura 3 tenemos el diagrama completo del accionador o control remoto sónico.

 

   Figura 3 - Diagrama del control remoto
   Figura 3 - Diagrama del control remoto | Haga click en la imagen para ampliar |

 

   

La placa de circuito impreso con relé DIL se muestra en la figura 4.

 

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

 

   Si se utiliza relé de base diferente, se debe cambiar la tarjeta.

   En el montaje, observe las posiciones de los circuitos integrados y del transistor, además de la polaridad de capacitores electrolíticos.

   Los resistores son de todos de 1/8 W con cualquier tolerancia y los demás componentes de acuerdo con la relación de materiales.

   Para utilizar un pequeño altavoz o micrófono de baja impedancia es necesario añadir un pequeño transformador casador de impedancia como se muestra en la figura 5.

 

   Figura 5 - Adición de un transformador
   Figura 5 - Adición de un transformador

 

   

Este transformador se puede obtener en un radio AM fuera de uso, siendo identificado lo que está conectado al altavoz, que también puede ser aprovechado como micrófono.

   En la figura 6 tenemos el modo de conectar una carga, por ejemplo, una lámpara, para hacer su accionamiento con el sonido.

 

   Figura 6 - Conexión de una carga externa
   Figura 6 - Conexión de una carga externa

 

   

Para utilizar, vaya produciendo el sonido que desea para accionar y ajustando P1 hasta que el relé funcione normalmente ligando y apagando la carga.

 

CI-1 - CA3140 - circuito integrado

CI-2 - 555 - circuito integrado

CI-3 - 4013 - circuito integrado

Q1 - BC548 - transistores NPN de uso general

D1 - 1N4148 - diodo de uso general

MIC - micrófono piezoeléctrico

B1 - 6 V - 4 pilas

S1 - Interruptor simple

K1 - Relé de 6 V hasta 100 mA

P1 - 2M2 - pote

R1, R2, R5 - 100 k ohms - resistores - marrón, negro, amarillo

R3 - 10 k ohms - resistor - marrón, negro, naranja

R4, R5 - 47 k ohms - resistores - marrón, negro, naranja

R7 - 4k7 ohms - resistor - amarillo, violeta, rojo

C1, C2 - 4,7 uF x 12 v - capacitores electrolitos

C3 - 100 uF x 12 V - capacitor electrolítico

 

Varios:

Placa de circuito impreso, fuente o soporte de pilas, caja para montaje, hilos, soldadura, etc.

 

 

18.905MBMemory Usage44.45msRequest 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
array:1 [ "c2123392c06423339225f3431360b7e6" => "cbscappvuoqibhqu5hn06mmog7" ]
$_SERVER
array:52 [ "USER" => "apache" "HOME" => "/usr/share/httpd" "SCRIPT_NAME" => "/index.php" "RE...
session
array:3 [ "counter" => 2 "timer" => array:3 [ "start" => 1742255824 "last" => 1742255824...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (85.86KB) (214μs)
  • afterInitialise (1.14MB) (3.13ms)
  • afterRoute (179.21KB) (851μs)
  • beforeRenderComponent com_content (100.7KB) (363μs)
  • Before Access::preloadComponents (all components) (33.45KB) (149μs)
  • After Access::preloadComponents (all components) (107.06KB) (448μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (7μs)
  • After Access::preloadPermissions (com_content) (16.19MB) (26.15ms)
  • Before Access::getAssetRules (id:7092 name:com_content.article.11196) (514.65KB) (885μs)
  • After Access::getAssetRules (id:7092 name:com_content.article.11196) (7.38KB) (35μs)
  • afterRenderComponent com_content (382KB) (5.6ms)
  • afterDispatch (2.25KB) (41μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.23KB) (1.48ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (281μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (88μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (64.98KB) (967μs)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (531μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.14KB) (58μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.14KB) (179μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (45μs)
  • afterRender (257.73KB) (2.86ms)
  • 1 x After Access::preloadPermissions (com_content) (16.19MB) (58.83%)
    26.15ms
    1 x afterRenderComponent com_content (382KB) (12.59%)
    5.60ms
    1 x afterInitialise (1.14MB) (7.05%)
    3.13ms
    1 x afterRender (257.73KB) (6.42%)
    2.86ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.23KB) (3.33%)
    1.48ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (64.98KB) (2.18%)
    967μs
    1 x Before Access::getAssetRules (id:7092 name:com_content.article.11196) (514.65KB) (1.99%)
    885μs
    1 x afterRoute (179.21KB) (1.91%)
    851μs
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (1.19%)
    531μs
    1 x After Access::preloadComponents (all components) (107.06KB) (1.01%)
    448μs
    1 x beforeRenderComponent com_content (100.7KB) (0.82%)
    363μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (0.63%)
    281μs
    1 x afterLoad (85.86KB) (0.48%)
    214μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.14KB) (0.4%)
    179μs
    1 x Before Access::preloadComponents (all components) (33.45KB) (0.34%)
    149μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.2%)
    88μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.14KB) (0.13%)
    58μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (0.1%)
    45μs
    1 x afterDispatch (2.25KB) (0.09%)
    41μs
    1 x After Access::getAssetRules (id:7092 name:com_content.article.11196) (7.38KB) (0.08%)
    35μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.02%)
    7μs
21 statements were executed, 5 of which were duplicates, 16 unique17.12ms1.57MB
  • SELECT @@SESSION.sql_mode;30μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 154μ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_id52μs992BParams/libraries/src/Session/MetadataManager.php:316Copy
  • SELECT `id`,`rules` FROM `incbmx_viewlevels`43μ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` = :guest73μ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`264μ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)297μ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` = 013.99ms1.46MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`312μs2.39KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '11196'129μ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)150μ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`225μ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)355μ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`170μ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 ASC375μ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`163μs3.92KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `name`,`element` FROM `incbmx_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1112μ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)68μ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)142μ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` = 158μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:465Copy