Un amplificador operacional ideal presenta una salida nula cuando las tensiones de sus entradas son igual o no existen señales en las entradas. En la práctica, sin embargo, esto no ocurre, exigiendo de los usuarios que utilizan estos componentes en aplicaciones más críticas, técnicas especiales de equilibrio. Vea en este artículo cómo obtener el equilibrio de un amplificador operativo.

Un amplificador operacional ideal presenta características bien conocidas de todos que trabajan con estos componentes, como impedancia infinita de entrada, impedancia de salida nula, ganancia x rango pasante infinito, etc.

Una de las características de los amplificadores operacionales sin embargo, que causa problemas cuando se utiliza ese componente en instrumentación, con transductores es la no linealidad de su salida, que presenta una desviación de cero cuando las tensiones de entrada son iguales.

Así, como muestra la figura 1, la salida de un amplificador operacional puede ser diferente de cero, incluso cuando las tensiones en sus entradas son iguales, dada la no centralización de su curva característica.

 


 

 

Esta variación ocurre por diversos motivos como, por ejemplo, problemas de diseño, no linealidad intrínseca del propio componente, variaciones que ocurren con la temperatura, etc.

Algunos amplificadores bastante conocidos como el 741 ya proveen recursos para que la tensión de offset de salida sea compensada por un trimpot externo, como muestra la figura 2.

 


 

 

A través de este trimpot es posible colocar la salida en cero cuando no existen señales de entrada o cuando las tensiones de entrada son iguales, compensando la no linealidad de las características del componente.

Sin embargo, muchos amplificadores operativos, principalmente los que forman parte de envoltorios que contienen varios de ellos, no poseen elementos para hacer la compensación lo que exige el empleo de técnicas especiales de compensación de la tensión de offset.

A continuación, damos algunos circuitos que pueden ser utilizados con ese fin.

 

Circuitos Prácticos

En la figura 3 mostramos un primer circuito que se utiliza para balancear amplificadores que hacen uso de la entrada inversora y que tienen resistencias de fuente de 10 k ohms o mayores.

 


 

 

 

En este circuito lo que se hace es añadir una pequeña corriente al circuito de entrada de modo que compense las variaciones que puedan ser introducidas naturalmente por el componente.

La resistencia R1 debe ser por lo menos 2 000 veces mayor que la resistencia R4, que en esta aplicación es de 10 000 ohms. Así, un resistor de 22 M ohms es el indicado para esa función de equilibrio.

El trimpot permite ajustar la cadena para obtener un balance de equilibrio del circuito.

Un problema presentado por este circuito es que si la resistencia de entrada es muy alta, el resistor a ser empleado en el proceso de equilibrio también se vuelve muy grande, dificultando la aplicación de ese método.

Otro circuito para el balance de amplificadores operativos es el que se muestra en la figura 4.

 


 

 

 

En este circuito, un divisor resistivo se utiliza para aplicar una tensión de compensación obtenida de un trimpot. La ventaja de este proceso está en el hecho de que los resistores pueden tener valores menores, aunque la resistencia de entrada del amplificador sea elevada.

También es posible utilizar esta técnica de balanceo en amplificadores operacionales no inversores, como muestra la figura 5.

 


 

 

 

Las fórmulas que permiten calcular los valores de los componentes para esta aplicación están junto al diagrama.

En la figura 6 mostramos cómo debe ser el equilibrio de un seguidor de tensión.

 


 

 

 

En este circuito, el resistor R1 inyecta una corriente que provoca un ligero desplazamiento de la tensión en R3 para cancelar la tensión de offset que aparece en el amplificador operacional.

Es importante observar que en ese circuito, el aumento de los circuitos de balanceo modifica la ganancia. Sin embargo, en la mayoría de los casos, las variaciones obtenidas son muy pequeñas.

Así, en ese circuito tenemos una variación del orden de apenas 0,05% en la ganancia esperada con los componentes utilizados.

En el caso de utilización del amplificador operacional en modo diferencial, las técnicas de balanceo son más complejas. Así, en la figura 7 tenemos un circuito de equilibrio utilizado para ese propósito.

 


 

 

 

Aunque la compensación se realiza en sólo una de las entradas, los efectos sobre la operación en el modo diferencial son mínimos. Los valores de los componentes se calculan mediante las fórmulas dadas junto al diagrama.

Se observa que la elección de los valores de los componentes está directamente ligada a las demás características que se espera para el circuito. Así, la ganancia, la resistencia de entrada son algunos de estos factores.

La banda (Range) indicada para los circuitos sugeridos, muestra la variación de la tensión de offset que se obtiene con los componentes utilizados.

 

Conclusión

A pesar de requerir algunos componentes externos adicionales, las técnicas mostradas tienen la ventaja que se pueden aplicar prácticamente en cualquier amplificador operacional.

Otro punto importante que debe considerarse es que estas técnicas no influyen en el rendimiento del circuito interno del componente.

Por último, le informamos que este artículo se ha elaborado sobre la base de la documentación técnica de National Semiconductor (www.national.com).

 

 

18.905MBMemory Usage41msRequest 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" => "hs9nr3cl5j4rovskh9a32uap6e" ]
$_SERVER
array:52 [ "USER" => "apache" "HOME" => "/usr/share/httpd" "SCRIPT_NAME" => "/index.php" "RE...
session
array:3 [ "counter" => 3 "timer" => array:3 [ "start" => 1741990597 "last" => 1741990598...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (85.92KB) (329μs)
  • afterInitialise (1.14MB) (3.57ms)
  • afterRoute (179.16KB) (953μs)
  • beforeRenderComponent com_content (100.65KB) (516μs)
  • Before Access::preloadComponents (all components) (33.5KB) (249μs)
  • After Access::preloadComponents (all components) (107.06KB) (395μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (11μs)
  • After Access::preloadPermissions (com_content) (16.19MB) (20.72ms)
  • Before Access::getAssetRules (id:18905 name:com_content.article.22741) (514.65KB) (657μs)
  • After Access::getAssetRules (id:18905 name:com_content.article.22741) (7.38KB) (42μs)
  • afterRenderComponent com_content (392.55KB) (6.26ms)
  • afterDispatch (2.25KB) (56μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.23KB) (1.59ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (320μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (93μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (64.98KB) (1.1ms)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (582μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.39KB) (67μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.39KB) (186μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (47μs)
  • afterRender (257.73KB) (3.12ms)
  • 1 x After Access::preloadPermissions (com_content) (16.19MB) (50.55%)
    20.72ms
    1 x afterRenderComponent com_content (392.55KB) (15.27%)
    6.26ms
    1 x afterInitialise (1.14MB) (8.72%)
    3.57ms
    1 x afterRender (257.73KB) (7.61%)
    3.12ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.23KB) (3.88%)
    1.59ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (64.98KB) (2.68%)
    1.10ms
    1 x afterRoute (179.16KB) (2.32%)
    953μs
    1 x Before Access::getAssetRules (id:18905 name:com_content.article.22741) (514.65KB) (1.6%)
    657μs
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (1.42%)
    582μs
    1 x beforeRenderComponent com_content (100.65KB) (1.26%)
    516μs
    1 x After Access::preloadComponents (all components) (107.06KB) (0.96%)
    395μs
    1 x afterLoad (85.92KB) (0.8%)
    329μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (0.78%)
    320μs
    1 x Before Access::preloadComponents (all components) (33.5KB) (0.61%)
    249μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.39KB) (0.45%)
    186μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.23%)
    93μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.39KB) (0.16%)
    67μs
    1 x afterDispatch (2.25KB) (0.14%)
    56μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (0.11%)
    47μs
    1 x After Access::getAssetRules (id:18905 name:com_content.article.22741) (7.38KB) (0.1%)
    42μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.03%)
    11μs
21 statements were executed, 5 of which were duplicates, 16 unique11.03ms1.57MB
  • SELECT @@SESSION.sql_mode;38μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 167μ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_id64μs992BParams/libraries/src/Session/MetadataManager.php:316Copy
  • SELECT `id`,`rules` FROM `incbmx_viewlevels`44μ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` = :guest69μ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`247μ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)234μ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.88ms1.46MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`326μs2.39KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '22741'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)185μ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`185μ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)233μs4KBParams/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 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`171μs3.92KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `name`,`element` FROM `incbmx_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1155μ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)91μs648B/administrator/components/com_finder/src/Indexer/Taxonomy.php:325Copy
  • SELECT * FROM `incbmx_schemaorg` WHERE `itemId` = :itemId AND `context` = :context61μ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` = 172μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:465Copy