Describimos un aparato de utilidad para las lectores que trabajan en el desarrollo de circuitos TTL o bien hacen su mantenimiento. Se trata de un generador de impulsos, con relación marca/espacio variable que puede generar seriales en la banda de 10 a 100 kHz con buena precisión.

La base de este artículo es un integrado extremadamente popular para quien trabaja con TTL, el 7400.

Aprovechamos una de sus puertas en un oscilador que puede operar en uma amplia banda de frecuencias y gracias a un transistor, con una relación marca- espacio ajustable en una amplia banda de valores.

La salida del oscilador puede servir tanto para excitar circuitos TTL como para otras aplicaciones, por ejemplo, como generador de audio 0 incluso inyector de señales para pruebas y ajustes en receptores.

El circuito es de fácil montaje, y todos los componentes utilizados son bastante comunes. Entre las aplicaciones posibles para este instrumento, sugerimos:

a) Prueba de circuitos TTL.

b) Inyector de señales.

c) Prueba de audio.

d) Prueba de pequeños transductores.

Veamos su funcionamiento:

Una de las cuatro puertas NAND del 7400 es conectada como un oscilador en que la frecuencia es dada tanto por los capacitores C1 a C4 (que son seleccionados por medio de una llave) como por el resistor R1 en conjunto con P1.

La carga y descarga del capacitor y por lo tanto el ciclo activo del oscilador también depende del ajuste de P2. La salida de este oscilador ya es compatible TTL, pero para no cargarlo aplicandola directamente en los circuitos a prueba conectamos las demás puertas del 7400 como un amplificador/inversor digital.

Con eso aislamos el oscilador (buffer) y al mismo tiempo obtenemos una mayor intensidad para la serial y salida en lo que se refiere a su cargabilidad.

En la salida tenemos dos opciones que son exploradas en este circuito. La primera consiste en la aplicación directa a entradas TTL, lo que se puede hacer via capacitor C6.

La segunda consiste en pasar la señal por un divisor de tensión que funcionará entonces como un ajuste de intensidad. lo que será interesante en las pruebas de audio 0 cuando usamos el aparato como inyector de señales.

El circuito debe ser alimentado con 5V, siendo la realización de la fuente simple, como muestra la figura 1.

 

Figura 1
Figura 1

 

En el primer caso, si se desea una operación portátil, conectamos en serie con 4 pilas pequeñas un diodo del tipo 1N4002 o incluso 1N4148 que proporciona una caída de 0,6 a 0,7V llevando-la a a 5,4 o 5,3V10 que está dentro de los limites admisibles para una alimentación TTL.

La otra opción consiste en una fuente más elaborada que emplea un integrado 7805 (ya sea en la versión de 1 A o en la versión menor de 2oomA).

Esta versión tanto puede ser alimentada a partir de un transformador de 9+9V con dos diodos 1N4002 y un capacitor de filtro de 1000uF, como a partir de una bateria de 9V, lo que convierte la unidad en portátil.

Observamos que el consumo de corriente del aparato es bastante bajo, lo que garantiza una buena durabilidad para las pilas 0 baterias usadas.

 

Montaje

En la figura 2 tenemos el diagrama completo del generador.

 

Figura 2
Figura 2

 

Para el integrado sugerimos la utilización de un zócalo dual in line (DIL) de 14 pins.

Para conmutar los capacitores usamos una llave de 1 polo x 4 posiciones, pero si el lector dispone de una llave de más posiciones puede usaria sin inconvenientes agregando capacitores de 1uF, 10uF y hasta incluso de 100uF, y de esta manera 1a frecuencia mínima llegará a menos de 1Hz.

Los capacitores pueden ser cerâmicos, de poliéster y, para el caso de valores por encima de 1uF, se pueden usar electrolíticos.

Los potenciometros son lineales y los resistores de 1 /8 o 1 /4W con 10 ó 20% de tolerancia.

Para la salida de serial podemos usar borneras, y el lector deberá tener preparado un cable con pinzas cocodrilo o puntas de prueba para la conexión al aparato.

En la figura 3 damos una sugerencia de montaje en caja plástica.

 

Figura 3
Figura 3

 

Si la alimentación fuera por pilas se puede usar el modelo menor mientras que si se usa fuente con transformador, la caja debe ser mayor.

 

Prueba y uso

Para probar el aparato basta conectar la alimentación y conectar en la salida un indicador de niveles lógicos (TTL). Si el lector no dispone de este instrumento, puede conectarla a un frecuencimetro y, en último caso, eligiendo una banda más baja de frecuencias, un transductor cerâmico o cápsula de cristal (telefónica) que debe "chillar".

Comprobado el funcionamiento solo resta utilizar el aparato recordando que la salida de TTL puede excitar entradas de este tipo de circuito directamente, y que en la salida variable podemos emplear el aparato como un generador de audio o señales, controlando la intensidad de la señal en P3.

El potenciômetro P2 controla la relación marca/espacio, la cual podrá ser calibrada perfectamente con la ayuda de un osciloscopio.

El potenciômetro P1 controla la frecuencia, como muestra la figura 4.

 

Figura 4
Figura 4

 

Del mismo modo, un frecuencimetro o bien un osciloscopio con ayuda y un generador calibrado permite la calibración de la escala de frecuencias.

Observamos que los factores de multiplicación de escala de frecuencias dados por S1 tendrán una precisión que va a depender de los capacitores usados.

 

Dependiendo de la tolerancia de estos componentes, la calibración en uma escala no valdrá para las otras.

 


 

 

 

 

18.812MBMemory Usage54.93msRequest 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
[]
$_SERVER
array:51 [ "USER" => "apache" "HOME" => "/usr/share/httpd" "SCRIPT_NAME" => "/index.php" "RE...
session
array:3 [ "counter" => 1 "timer" => array:3 [ "start" => 1743881722 "last" => 1743881722...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (85.61KB) (1.17ms)
  • afterInitialise (1.14MB) (5.4ms)
  • afterRoute (89.95KB) (1.1ms)
  • beforeRenderComponent com_content (100.37KB) (606μs)
  • Before Access::preloadComponents (all components) (33.44KB) (274μs)
  • After Access::preloadComponents (all components) (107.06KB) (725μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (10μs)
  • After Access::preloadPermissions (com_content) (16.19MB) (29.42ms)
  • Before Access::getAssetRules (id:2693 name:com_content.article.46) (514.65KB) (1.1ms)
  • After Access::getAssetRules (id:2693 name:com_content.article.46) (7.38KB) (44μs)
  • afterRenderComponent com_content (361.94KB) (6.14ms)
  • afterDispatch (2.25KB) (52μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.33KB) (2.21ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.43KB) (385μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (113μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (129.29KB) (1.3ms)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (742μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.39KB) (76μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.39KB) (205μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.44KB) (62μs)
  • afterRender (259.42KB) (3.68ms)
  • 1 x After Access::preloadPermissions (com_content) (16.19MB) (53.56%)
    29.42ms
    1 x afterRenderComponent com_content (361.94KB) (11.17%)
    6.14ms
    1 x afterInitialise (1.14MB) (9.84%)
    5.40ms
    1 x afterRender (259.42KB) (6.71%)
    3.68ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.33KB) (4.03%)
    2.21ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (129.29KB) (2.37%)
    1.30ms
    1 x afterLoad (85.61KB) (2.12%)
    1.17ms
    1 x Before Access::getAssetRules (id:2693 name:com_content.article.46) (514.65KB) (2%)
    1.10ms
    1 x afterRoute (89.95KB) (2%)
    1.10ms
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (1.35%)
    742μs
    1 x After Access::preloadComponents (all components) (107.06KB) (1.32%)
    725μs
    1 x beforeRenderComponent com_content (100.37KB) (1.1%)
    606μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.43KB) (0.7%)
    385μs
    1 x Before Access::preloadComponents (all components) (33.44KB) (0.5%)
    274μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.39KB) (0.37%)
    205μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.21%)
    113μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.39KB) (0.14%)
    76μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.44KB) (0.11%)
    62μs
    1 x afterDispatch (2.25KB) (0.1%)
    52μs
    1 x After Access::getAssetRules (id:2693 name:com_content.article.46) (7.38KB) (0.08%)
    44μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.02%)
    10μs
21 statements were executed, 5 of which were duplicates, 16 unique11.23ms1.55MB
  • SELECT @@SESSION.sql_mode;32μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 170μ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)168μs944BParams/libraries/src/Session/MetadataManager.php:260Copy
  • SELECT `id`,`rules` FROM `incbmx_viewlevels`58μ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` = :guest80μ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`211μs3.86KBParams/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)539μ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.65ms1.46MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`333μs2.39KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '46'173μ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)163μ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`216μs3.91KBParams/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)237μs3.97KBParams/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`165μs3.91KBParams/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)) AND `a`.`access` IN (:preparedArray3,:preparedArray4)) AND (`a`.`group_id` = 0 OR `g`.`access` IN (:preparedArray5,:preparedArray6)) 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 ASC392μs4.75KBParams/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`187μs3.91KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `name`,`element` FROM `incbmx_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1122μ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)104μs648B/administrator/components/com_finder/src/Indexer/Taxonomy.php:325Copy
  • SELECT * FROM `incbmx_schemaorg` WHERE `itemId` = :itemId AND `context` = :context72μ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)185μ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` = 166μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:465Copy