El circuito que presentamos sirve para invertir el sentido de circulación de la corriente a través de una carga por un tiempo determinado por C1 y R1. Entre las aplicaciones posibles, sugerimos automatismos en que, al activarse un sensor de seguridad, un motor de accionamiento deba inmediatamente invertir su sentido de rotación por algunos segundos. Otras aplicaciones dependen sólo de la imaginación del lector.

 

Aplicaciones posibles:

• Sistemas de seguridad

• Automatización

• Robótica

• Señalización

   

Cuando el sensor del circuito mostrado en la figura 1, cierra sus contactos por un instante el capacitor C1 se carga.

   A partir de ese instante, el transistor Q1 está saturado cerrando los contactos del relé.

 

Figura 1 - Circuito del módulo reversor
Figura 1 - Circuito del módulo reversor | Haga click en la imagen para ampliar |

 

   

Incluso después de que el sensor tiene sus contactos abiertos, la carga del capacitor C1 mantiene el transistor en conducción y con ello el relé se mantiene activado.

   El relé, de contactos dobles reversibles se conecta de tal forma que hace circular por la carga la corriente en un sentido cuando está desenergizado y en el sentido opuesto cuando su bobina es energizada.

   Si la carga es un motor, tendremos su reversión por el tiempo determinado por R1 y C1.

   Si la carga está formada por otro circuito sensible a la circulación de corriente, por ejemplo, dos LEDs diferentes en oposición, tendremos el cambio del color de señalización.

   La elección de R1 y R2, así como del relé dependerá de la aplicación del circuito.

   En cuanto a la alimentación del circuito, y por consiguiente del relé, es independiente de la alimentación de la carga, lo que hace el circuito más versátil.

   Los valores excesivos de R1 y C1 deben ser evitados, pues las fugas pueden afectar la temporización. Los tiempos de la orden de algunos minutos se pueden conseguir fácilmente.

   Un trimpot de 47 k ohms, en serie con una resistencia de 1 k ohms, puede ser usado para obtener un ajuste de temporización. Se conectará en lugar del resistor.

   No es necesario utilizar radiador de calor para el transistor, ya que la corriente del relé es bastante baja.

   Los transistores de alta ganancia y de menor potencia como el BC548 también funcionarán, pero el relé no debe tener corriente de accionamiento mayor que 50 mA, en ese caso.

   El sensor puede ser cualquier tipo NA (normalmente abierto), como un reed-switch, un microswitch o aún llaves de final de carrera y otros dispositivos de seguridad.

   También es posible conectar varios sensores en paralelo, de modo que se obtenga un accionamiento múltiple del módulo.

   En ese caso, la función que regirá su funcionamiento será "O".

   Para una función "E", basta con conectar los sensores en serie, como se muestra en la figura 2.

 

   Figura 2 - Accionamiento por sensores
   Figura 2 - Accionamiento por sensores

 

   

Un sistema adicional puede ser agregado para que, después de la reversión, el circuito pare no volviendo a la condición normal de circulación.

   Esto puede ser implementado con recursos mecánicos como catracas o aún electrónicos, como un SCR (clave lógica con bloqueo).

   En la figura 3 damos una sugerencia de placa de circuito impreso para implementación de ese proyecto.

 

   Figura 3 - Sugerencia de placa de circuito impreso
   Figura 3 - Sugerencia de placa de circuito impreso | Haga click en la imagen para ampliar |

 

    

El circuito también puede ser usado para simplemente mantener una carga accionada por un cierto tiempo, bastando para ello usar los contactos NA y C del relé.

   En este caso, se deben realizar pequeños cambios en las conexiones de la tarjeta.

   También observamos que el diseño de la placa fue elaborado para relés con base DIL.

   Si se utilizan otros tipos de relé, se deben realizar cambios en el diseño.

   La intensidad de la corriente controlada determinará el ancho de las pistas de estos contactos si no hay necesidad de conexión directa.

 

Q1 - TIP110 o equivalente - cualquier transistor Darlington NPN

D1 - 1N4148 - diodo de uso general

X1 - Sensor NA (ver texto)

C1 - 10 uF a 2 200 uF - capacitor electrolítico según el tiempo - ver el texto

R1 - 10 k ohms a 47 k ohmios x 1/8 W - resistencia según el tiempo - ver el texto

K1- Relé de 6 o 12 V - bobina hasta 100 mA - conforme tensión de alimentación

Varios:

Placa de circuito impreso, hilos, soldadura, fuente de alimentación, etc.

 

 

Settings18.928MBMemory Usage47.79msRequest 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
[]
$_SERVER
array:51 [ "USER" => "apache" "HOME" => "/usr/share/httpd" "SCRIPT_NAME" => "/index.php" "RE...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1753245118 "last" => 1753245118...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (83.71KB) (615μs)
  • afterInitialise (1.13MB) (4.73ms)
  • afterRoute (179.88KB) (1.36ms)
  • beforeRenderComponent com_content (101.14KB) (380μs)
  • Before Access::preloadComponents (all components) (33.13KB) (160μs)
  • After Access::preloadComponents (all components) (113.51KB) (530μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (11μs)
  • After Access::preloadPermissions (com_content) (16.23MB) (22.22ms)
  • Before Access::getAssetRules (id:21002 name:com_content.article.24819) (514.65KB) (1.08ms)
  • After Access::getAssetRules (id:21002 name:com_content.article.24819) (7.38KB) (100μs)
  • afterRenderComponent com_content (357.77KB) (8.69ms)
  • afterDispatch (2.25KB) (44μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (422.62KB) (1.56ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.5KB) (461μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (103μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (54.31KB) (1.03ms)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (664μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (95μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.21KB) (214μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (52μs)
  • afterRender (261.91KB) (3.59ms)
  • 1 x After Access::preloadPermissions (com_content) (16.23MB) (46.49%)
    22.22ms
    1 x afterRenderComponent com_content (357.77KB) (18.19%)
    8.69ms
    1 x afterInitialise (1.13MB) (9.89%)
    4.73ms
    1 x afterRender (261.91KB) (7.51%)
    3.59ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (422.62KB) (3.26%)
    1.56ms
    1 x afterRoute (179.88KB) (2.86%)
    1.36ms
    1 x Before Access::getAssetRules (id:21002 name:com_content.article.24819) (514.65KB) (2.25%)
    1.08ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (54.31KB) (2.17%)
    1.03ms
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (1.39%)
    664μs
    1 x afterLoad (83.71KB) (1.29%)
    615μs
    1 x After Access::preloadComponents (all components) (113.51KB) (1.11%)
    530μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.5KB) (0.96%)
    461μs
    1 x beforeRenderComponent com_content (101.14KB) (0.8%)
    380μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.21KB) (0.45%)
    214μs
    1 x Before Access::preloadComponents (all components) (33.13KB) (0.33%)
    160μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.22%)
    103μs
    1 x After Access::getAssetRules (id:21002 name:com_content.article.24819) (7.38KB) (0.21%)
    100μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (0.2%)
    95μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (0.11%)
    52μs
    1 x afterDispatch (2.25KB) (0.09%)
    44μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.02%)
    11μs
21 statements were executed, 5 of which were duplicates, 16 unique12.11ms1.58MB
  • SELECT @@SESSION.sql_mode;36μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 184μ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)178μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `id`,`rules` FROM `incbmx_viewlevels`56μ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` = :guest84μ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`255μs20.2KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `alias` FROM `incbmx_content` WHERE `id` = :id80μ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)328μ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` = 08.35ms1.48MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`430μs1.77KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:539Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '24819'252μ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)221μ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`238μ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)295μ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`174μ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 ASC435μ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`185μ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)103μs648B/administrator/components/com_finder/src/Indexer/Taxonomy.php:325Copy
  • SELECT * FROM `incbmx_schemaorg` WHERE `itemId` = :itemId AND `context` = :context73μ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)178μ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:517Copy