Este circuito está destinado al accionamiento de un relé cuando la luz que incide en un fotodiodo es cortada o aún cuando la luz se establece, dependiendo de las posiciones relativas del diodo D1 y de P1.

   La sensibilidad es excelente, y la carga accionada depende exclusivamente del tipo de relé usado.

   En la condición de reposo (relé desenergizado) el consumo de energía es extremadamente bajo.

   Hay muchas aplicaciones prácticas en las que un circuito accionado por la luz es usado. Se puede citar el caso de alarmas, interruptores crepusculares, contadores de objetos, etc.

   El circuito propuesto se encuadra en la categoría de foto-relés con la utilización de un fotodiodo como sensor.

   Este componente se caracteriza por la velocidad de respuesta y sensibilidad, aunque la corriente suministrada requiere el empleo de buenas etapas de amplificación.

   El circuito excita un relé, en nuestro caso, pero pequeñas modificaciones en la etapa final de salida permiten que excite diversos tipos de cargas, tanto de corriente continua como conectadas a la propia red de energía, incluso sin la utilización de relés.

   Finalmente, dado el hecho de que el fotodiodo también es bastante sensible al espectro infrarrojo producido por foto-emisores del tipo LED, podemos usar el aparato con "luz invisible", lo que es interesante si buscamos su aplicación en una alarma.

 

Características:

Tensión de alimentación: 6 V o 12 V (según el relé)

Corriente de reposo: 1 mA (tip.)

Corriente con relé energizado: 50 mA (12 V 100 mA x 6 V)

Carga máxima: 2 A

 

   La corriente que circula por un fotodiodo cuando polarizado en el sentido inverso depende de la intensidad de luz que incide en su unión.

   En nuestro proyecto formamos con el fotodiodo y potenciómetro de ajuste P1 un divisor de tensión.

   Con el diodo al positivo, la tensión en el divisor aumenta con la luz. En la posición inversa, es decir, diodo en el negativo de la fuente, la tensión en el divisor disminuye con el aumento de la luminosidad.

   Puede elegir la posición según el tipo de accionamiento que desee.

   El divisor de tensión se utiliza para polarizar la base de un transistor amplificador, la impedancia de este circuito es alta, obteniéndose un mejor rendimiento del circuito en términos de sensibilidad.

   El transistor, junto con R1, forma un nuevo divisor de tensión que polariza la entrada de un inversor formado por una de las cuatro puertas disparadoras disponibles en un integrado 4093B.

   De esta forma, con el diodo D1 iluminado, (en la versión básica) cuando la tensión de base del transistor aumenta, el transistor conduce y la tensión en la entrada del inversor cae a punto de ser interpretada como nivel bajo.

   En estas condiciones tenemos en la salida del inversor el nivel alto que se aplica a la entrada de los otros tres puertos que se conectan en paralelo para formar un búfer inversor.

   En la salida de este buffer tenemos entonces un nivel bajo que mantiene el transistor Q2 en el corte.

   La carga de este transistor es el relé, que se mantiene desenergizado.

   Si la luz que incide en el fotodiodo es cortada tenemos la inversión de niveles en la entrada del primer inversor y, consecuentemente, en la salida del buffer, habiendo así la saturación de Q2.

   Con la saturación de Q2 el relé energiza y, dependiendo de los contactos usados, podemos conectar o desconectar una carga externa.

   En el caso de relé energizado es que tenemos el mayor consumo del aparato, pues la corriente sube a 50 mA con alimentación de 12 V, y para 100 mA la alimentación de 6 V.

   De esta forma, dependiendo de la aplicación, será más interesante invertir las posiciones de D1 y P1 en el sentido de llegar a la condición de relé energizado para los intervalos de tiempo menores de uso del aparato.

   En la figura 1 tenemos el diagrama completo de la versión básica que alimenta un relé y que es activado cuando la luz es cortada en el diodo D1.

 

Figura 1 - Diagrama sin fuente
Figura 1 - Diagrama sin fuente

 

 

    Para esta versión, usando relés del tipo DIL tenemos la placa de circuito impreso mostrada en la figura 2.

 

Figura 2 - Sugerencia de placa de circuito impreso
Figura 2 - Sugerencia de placa de circuito impreso

 

    

El fotodiodo puede ser el BPW41 o equivalentes.

   También se pueden utilizar fototransistores sensibles en este circuito.

   El potenciómetro P1 no es crítico, determinando el rango de sensibilidad. Los valores entre 1 M ohms y 10 M ohms se pueden utilizar en función del nivel de iluminación con el que se desea operar el aparato.

   El valor de C1, que es simplemente de desacoplamiento, puede quedar entre 47 uF y 470 uF sin problemas, con tensión de trabajo igual o mayor que la usada en la alimentación.

   En lugar de energizar la bobina de un relé podemos usar los niveles lógicos obtenidos en la salida del buffer 4093 para excitar otros tipos de circuitos.

   Una primera opción hace uso de un FET de potencia en el control de una carga de corriente continua, que puede ser una lámpara, un solenoide o un pequeño motor.

Los FET, como el indicado en la figura 3, poseen la capacidad de controlar corrientes de varios ampères.

 

Figura 3 - Uso de un MOSFET de potencia
Figura 3 - Uso de un MOSFET de potencia

 

   

El transistor de potencia debe tener un radiador de calor, y si la carga es inductiva, debemos prever un diodo para evitar la producción de una tensión elevada sobre el transistor en el momento en que se desconecte.

   Otra opción, que hace uso de un Darlington de potencia, se muestra en la figura 4.

 

Figura 4 - Circuito con Darlington de potencia
Figura 4 - Circuito con Darlington de potencia

 

  

Este circuito puede controlar cargas de potencia con corrientes hasta 2 A o 3 A, pero con un rendimiento ligeramente menor que el de la versión anterior, porque la resistencia colector-emisor de un transistor bipolar saturado es mucho mayor que la resistencia drenaje-fuente un FET de potencia saturada.

   Esta resistencia, en el caso de los FET, puede llegar a menos de 0,1 ohms.

   La activación de la carga con la salida del buffer al nivel bajo puede ser hecha con el uso de transistores PNP, como muestra el circuito de la figura 5.

 

Figura 5 - Activación a nivel bajo
Figura 5 - Activación a nivel bajo

 

   

El transistor, en este caso, también debe estar dotado de un radiador de calor.

   Para controlar cargas de corriente alterna podemos usar un SCR, como muestra la figura 6.

 

Figura 6 - Disparando un SCR
Figura 6 - Disparando un SCR

 

   

En el circuito presentado, (media onda) podemos controlar cargas de hasta 3 A tanto en la red de 110 V como 220 V, bastando escoger el SCR con sufijo apropiado. Este componente deberá estar dotado de un radiador de calor.

   Observe que este circuito no tiene aislamiento entre la red de energía y el sector de baja tensión, ya que existe una línea de tierra en común.

   Si desea más seguridad en el control sin relé de una carga de alta potencia en la red de energía, puede partir al circuito de la figura 7 que hace uso de un opto diac en el disparo de un triac.

 

Figura 7 - Uso de un opto-diac
Figura 7 - Uso de un opto-diac

 

   

El triac indicado es de 8 A, pero los tipos de sensibilidad similar y de acuerdo con las cargas se pueden utilizar.

   El triac debe montarse en un radiador de calor.

   Para probar el aparato, basta con ajustar P1 para que el relé sea activado con el nivel deseado de sombra o luz, conforme a la versión.

Si no se consigue el ajuste con el nivel deseado, o se observa alguna inestabilidad, debemos aumentar el valor de P1.

   Una primera posibilidad consiste en conectar resistores de 1 M ohms a 4,7 M ohms en serie con este componente.

   Si el diodo se aleja del circuito puede haber necesidad de usar cables blindados.

   Para evitar respuestas rápidas con transitorios de luz de corta duración, un capacitor de 100 nF a 10 uF debe conectarse en paralelo con P1.

 

Semiconductores:

Cl1 - 4093 - circuito integrado CMOS

D, - fotodiodo BPW41 o equivalente

D2 - 1N4148 o equivalente - diodo de silicio

Q1, Q2 - BC548 o equivalente transistor NPN de uso general

 

Resistores (1/8 W, 5%)

R2 - 4,7 k ohms

P1 - potenciómetro de 2,2 M ohms

 

Capacitor electrolítico:

C1 - 100 uF

 

Varios:

K1- Relé de 6 V o 12 V - ver texto

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

 

 

18.905MBMemory Usage44.25msRequest 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" => "mg454t0ar42u8dmum33hjn299i" ]
$_SERVER
array:52 [ "USER" => "apache" "HOME" => "/usr/share/httpd" "SCRIPT_NAME" => "/index.php" "RE...
session
array:3 [ "counter" => 2 "timer" => array:3 [ "start" => 1742116238 "last" => 1742116238...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (85.86KB) (295μs)
  • afterInitialise (1.14MB) (3.45ms)
  • afterRoute (179.16KB) (882μs)
  • beforeRenderComponent com_content (100.65KB) (438μs)
  • Before Access::preloadComponents (all components) (33.5KB) (193μs)
  • After Access::preloadComponents (all components) (107.06KB) (469μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (8μs)
  • After Access::preloadPermissions (com_content) (16.19MB) (23.63ms)
  • Before Access::getAssetRules (id:21606 name:com_content.article.25363) (514.65KB) (633μs)
  • After Access::getAssetRules (id:21606 name:com_content.article.25363) (7.38KB) (39μs)
  • afterRenderComponent com_content (408.31KB) (6.88ms)
  • afterDispatch (2.25KB) (51μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.23KB) (1.6ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (319μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (90μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (64.98KB) (1.19ms)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (552μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.39KB) (64μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.39KB) (184μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (46μs)
  • afterRender (265.73KB) (3.13ms)
  • 1 x After Access::preloadPermissions (com_content) (16.19MB) (53.39%)
    23.63ms
    1 x afterRenderComponent com_content (408.31KB) (15.56%)
    6.88ms
    1 x afterInitialise (1.14MB) (7.79%)
    3.45ms
    1 x afterRender (265.73KB) (7.07%)
    3.13ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (359.23KB) (3.62%)
    1.60ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (64.98KB) (2.68%)
    1.19ms
    1 x afterRoute (179.16KB) (1.99%)
    882μs
    1 x Before Access::getAssetRules (id:21606 name:com_content.article.25363) (514.65KB) (1.43%)
    633μs
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (10.1KB) (1.25%)
    552μs
    1 x After Access::preloadComponents (all components) (107.06KB) (1.06%)
    469μs
    1 x beforeRenderComponent com_content (100.65KB) (0.99%)
    438μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (79.43KB) (0.72%)
    319μs
    1 x afterLoad (85.86KB) (0.67%)
    295μs
    1 x Before Access::preloadComponents (all components) (33.5KB) (0.44%)
    193μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.39KB) (0.42%)
    184μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.2%)
    90μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.39KB) (0.14%)
    64μs
    1 x afterDispatch (2.25KB) (0.12%)
    51μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.75KB) (0.1%)
    46μs
    1 x After Access::getAssetRules (id:21606 name:com_content.article.25363) (7.38KB) (0.09%)
    39μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.02%)
    8μs
21 statements were executed, 5 of which were duplicates, 16 unique14.96ms1.57MB
  • SELECT @@SESSION.sql_mode;34μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 166μ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_id153μs992BParams/libraries/src/Session/MetadataManager.php:316Copy
  • SELECT `id`,`rules` FROM `incbmx_viewlevels`66μ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` = :guest76μ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`236μ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)302μ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` = 011.14ms1.46MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`290μs2.39KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '25363'181μ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)197μ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`302μ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)378μ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`237μ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 ASC464μ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`242μs3.92KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `name`,`element` FROM `incbmx_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1196μ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)115μs648B/administrator/components/com_finder/src/Indexer/Taxonomy.php:325Copy
  • SELECT * FROM `incbmx_schemaorg` WHERE `itemId` = :itemId AND `context` = :context63μ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)156μ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` = 165μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:465Copy