El circuito práctico que presentamos consiste en una idea simple para implementar un enlace para comunicación de voz a través de fibra óptica. Se pueden aprovechar dos conductores ópticos o fibras de un cable para implementar un sistema bilateral y dependiendo del montaje, esto se puede hacer con una sola fibra. Con cambios, el mismo circuito se puede utilizar para transmitir datos o vídeo. Vea en este artículo cómo hacerlo.

La idea práctica que puede ser mejorada o adaptada en función de las necesidades de la aplicación, utiliza componentes comunes y puede servir como una solución simple para un sistema de comunicación de voz usando fibra óptica.

El sistema puede ser implementado en lugares ruidosos, donde el uso de hilos comunes es problemático o presenta otros tipos de dificultades técnicas.

Lo que tenemos es simplemente un circuito modulador para un LED emisor que debe tener el espectro de emisión que más se adapte a las características de la fibra que va a ser usada. El circuito, hace uso de un amplificador operacional común, con la ganancia dada por la retroalimentación. Este circuito, que no necesita fuente simétrica, se muestra en la figura 1.

 

 

Figura 1
Figura 1

 

 

Se ajusta la realimentación para que se obtenga la mejor modulación sin distorsión. El micrófono utilizado es común de electreto y para alimentar el circuito se pueden utilizar pilas comunes. Las mismas pilas se pueden utilizar para alimentar al receptor si el sistema es bilateral.

El transistor modulador es un BC548 o equivalente, ya que no se necesita potencia elevada y el resistor en serie con el LED determina su corriente de pico. Eventualmente, si el lector desea mayor potencia puede reducir esa resistencia y usar un BD135 dotado de un pequeño radiador en la modulación. En este caso, la alimentación se puede realizar con una tensión de 9 V o incluso 12 V. Sólo observe que la corriente de pico en el LED no sobrepase los valores admitidos por el componente.

Observamos que la modulación es en amplitud y que por lo tanto, no hay posibilidad de multiplexar en el mismo sentido dos o más señales de audio.

Una idea para un proyecto más avanzado sería operar en PWM, modulando, por ejemplo, osciladores que operen en frecuencias diferentes y luego separando las señales en el receptor, como sugiere la figura 2.

 

 


 

 

 

El mismo circuito transmisor también se puede utilizar como un enlace a las señales de un amplificador de audio o de un televisor en un sistema de distribución a prueba de captación de ruidos.

Para la recepción, el circuito tampoco presenta mayores dificultades para el entendimiento de su principio de funcionamiento. Este circuito se muestra en la figura 3.

 

 

Figura 3
Figura 3

 

 

El sensor es un foto-transistor que debe tener los recursos para acoplamiento al final de la fibra. Los pares que constan de emisor y sensor pueden ser obtenidos en el mercado especializado, facilitando la elaboración del sistema.

Sin embargo, una solución "casera" para el acoplamiento del sensor y del emisor es la que se muestra en la figura 4.

 


 

 

 

Un pequeño agujero, se hace con broca fina y muy cuidado tanto en el transmisor y en el receptor, donde la fibra óptica es encajada y pegada.

Para el circuito amplificador usamos un amplificador operacional como el 741 con la ganancia ajustada en el circuito de realimentación. La alimentación se realiza con 6 V y el amplificador de potencia puede ser de uso general como el TDA7052, LM386 o equivalente.

Incluso un amplificador transistorizado simple se puede utilizar si el transductor es un auricular.

En cuanto al alcance, va a depender de las características de la fibra usada, pero ciertamente puede ser del orden de cientos de metros, en los casos comunes.

 

Otras posibilidades

El mismo principio descrito en este proyecto puede ser utilizado para la elaboración de un enlace de datos. La velocidad de respuesta del LED emisor y del foto-transistor es bastante buena para admitir una buena tasa de envío de datos.

Sólo el circuito modulador y el amplificador deben ser adecuados para responder a las señales que deben enviarse. El uso de un modulador digital y de un receptor basado en un comparador puede posibilitar el desarrollo de proyectos que alcancen algunos cientos de kbits por segundo o incluso algunos Mbits por segundo.

También es posible transmitir señales de vídeo, ya que el rango de estas señales no es tan alto como para pasar de la capacidad de los sensores. Evidentemente, los moduladores y receptores apropiados también deben usarse en este caso.

 

 

a) Transmisor

CI-1 - 741 - circuito integrado - amplificador operativo

Q1 - BC548 - transistores NPN de uso general

LED - LED emisor (rojo o infrarrojo)

MIC - Micrófono de electreto de dos terminales

B1 - 6 V - 4 pilas pequeñas o fuente

R1 - 10 k ohms x 1/8 w - resistor - marrón, negro, naranja

R2 - 560 k ohms x 1/8 W - resistor - verde, azul, amarillo

R3 - 220 k ohms x 1/8 w - resistor - rojo, rojo, amarillo

R4 - 220 ohms x 1/8 W - resistor - rojo, rojo, marrón

R5 - 2,2 k ohms x 1/8 W - resistor - rojo, rojo, rojo

R6 - 100 ohms x 1/8 w - resistor - marrón, negro, marrón

P1 - 1 M ohms - trimpot

C1 - 470 nF - capacitor de cerámica o poliéster

C2 - 10 uF - capacitor electrolítico

C3 - 100 uF - capacitor electrolítico

 

Varios:

Placa de circuito impreso, soporte de pilas, fibra óptica, hilos, soldadura, etc.

 

b) Receptor

CI-1 - 741 - circuito integrado - amplificador operativo

CI-2 - LM386 - circuito integrado - amplificador de audio

Q1 - foto-transistores

B1 - 6 V - 4 pilas pequeñas o fuente

FTE - Altavoz de 8 ohms

R1 - 220 k ohms x 1/8 w - resistor - rojo, rojo, amarillo

R2, R3 - 120 k ohms x 1/8 w - resistores - marrón, rojo, amarillo

R4, R6 - 10 k ohms x 1/8 W - resistores - marrón, negro, naranja

R5 - 1 M ohms x 1/8 W - resistor - marrón, negro, verde

P1 - 100 k ohms - trimpot

C1 - 470 uf x 12 v - capacitor electrolítico

C2 - 220 nF - capacitor de cerámica o poliéster

C3 - 150 nF - capacitor de cerámica o poliéster

C4 - 220 uF - capacitor electrolítico

C5 - 100 uF - capacitor electrolítico

 

Varios:

Placa de circuito impreso, pilas o fuente de alimentación, caja para montaje, fibras ópticas, etc.

 

18.994MBMemory Usage40.54msRequest Duration
Joomla! Version5.2.3
PHP Version8.3.20
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" => 1749547554 "last" => 1749547554...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (85.36KB) (239μs)
  • afterInitialise (1.14MB) (3.53ms)
  • afterRoute (179.21KB) (832μs)
  • beforeRenderComponent com_content (100.98KB) (407μs)
  • Before Access::preloadComponents (all components) (33.45KB) (188μs)
  • After Access::preloadComponents (all components) (107.06KB) (445μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (9μs)
  • After Access::preloadPermissions (com_content) (16.22MB) (19.04ms)
  • Before Access::getAssetRules (id:8 name:com_content) (480.05KB) (2.32ms)
  • After Access::getAssetRules (id:8 name:com_content) (7.36KB) (49μs)
  • afterRenderComponent com_content (429.81KB) (6.17ms)
  • afterDispatch (2.25KB) (45μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (422.53KB) (1.6ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.43KB) (354μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (90μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (63.02KB) (1.14ms)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (542μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (70μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.64KB) (186μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.44KB) (47μs)
  • afterRender (296.81KB) (3.15ms)
  • 1 x After Access::preloadPermissions (com_content) (16.22MB) (46.97%)
    19.04ms
    1 x afterRenderComponent com_content (429.81KB) (15.21%)
    6.17ms
    1 x afterInitialise (1.14MB) (8.7%)
    3.53ms
    1 x afterRender (296.81KB) (7.78%)
    3.15ms
    1 x Before Access::getAssetRules (id:8 name:com_content) (480.05KB) (5.71%)
    2.32ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (422.53KB) (3.94%)
    1.60ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (63.02KB) (2.81%)
    1.14ms
    1 x afterRoute (179.21KB) (2.05%)
    832μs
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (1.34%)
    542μs
    1 x After Access::preloadComponents (all components) (107.06KB) (1.1%)
    445μs
    1 x beforeRenderComponent com_content (100.98KB) (1%)
    407μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.43KB) (0.87%)
    354μs
    1 x afterLoad (85.36KB) (0.59%)
    239μs
    1 x Before Access::preloadComponents (all components) (33.45KB) (0.46%)
    188μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.64KB) (0.46%)
    186μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.22%)
    90μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (0.17%)
    70μs
    1 x After Access::getAssetRules (id:8 name:com_content) (7.36KB) (0.12%)
    49μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.44KB) (0.12%)
    47μs
    1 x afterDispatch (2.25KB) (0.11%)
    45μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.02%)
    9μs
23 statements were executed, 5 of which were duplicates, 18 unique11.33ms1.58MB
  • SELECT @@SESSION.sql_mode;33μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 165μ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`50μ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` = :guest74μ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`219μ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)299μ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.68ms1.48MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_assets`353μs2.02KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • SELECT * FROM `incbmx_assets` WHERE `name` = 'com_content.article.3921'66μs912B/libraries/src/Table/Table.php:780Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`281μs1.77KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '3921'177μ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)173μ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`196μ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)219μ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`169μ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 ASC400μs6.06KBParams/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`190μs3.92KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `name`,`element` FROM `incbmx_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1137μs656B/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)84μ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)158μ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` = 171μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:465Copy
  • warningassets - No asset found for com_content.article.3921, falling back to com_content
  • warningassets - No asset found for com_content.article.3921, falling back to com_content
  • warningassets - No asset found for com_content.article.3921, falling back to com_content
  • warningassets - No asset found for com_content.article.3921, falling back to com_content
  • warningassets - No asset found for com_content.article.3921, falling back to com_content
  • warningassets - No asset found for com_content.article.3921, falling back to com_content
  • warningassets - No asset found for com_content.article.3921, falling back to com_content
  • warningassets - No asset found for com_content.article.3921, falling back to com_content
  • warningassets - No asset found for com_content.article.3921, falling back to com_content
  • warningassets - No asset found for com_content.article.3921, falling back to com_content