¿Cómo funcionan los servos? Su construcción delicada y el costa de estos dispositivos impiden el montaje de sistemas de radiocontrol completos por muchos lectores. Vea en este artículo cómo funcionan estos dispositivos y estudie la posibilidad de su construcción casera.

La conexión de relés, solenoides o sistemas de escape en los receptores de radiocontrol permiten obtener funcionamientos razonables pero no son la solución ideal.

De hecho, con relés, solenoides y sistemas de escape no tenemos un control continuo de las posiciones de control, sino un control a saltos que no siempre logra, en el modelo dirigido, un comportamiento realista como deseamos.

En el caso de relés y solenoides, por ejemplo, tenemos solamente dos posiciones posibles de control, pues este dispositivo sólo puede estar conectado o desconectado. En el caso de un auto, barco o avión, si lo usamos en su timón, sólo tenemos dos posiciones posibles de control, lo que significa la realización de maniobras bruscas (figura 1).

 


 

 

Con el sistema de escape, la situación mejora un poco, pues ya tenemos posiciones intermedias, pero el hecho de que el sistema sólo pueda actuar en un sentido es un obstáculo para el control.

Vea que el sistema de escape sólo gira en un sentido, lo que quiere decir que no podemos pasar directamente de una posición de control a la anterior.

Debemos antes completar todo el ciclo de actuación para volver a la posición inicial y después seguir al punto deseado. Esto sin duda es un problema para los casos en que se desean maniobras rápidas y precisas del modelo (figura 2).

 


 

 

Para obtener un control lineal de un sistema de radiocontrol, se usan dispositivos denominados "servos", de los cuales ya hablamos algo alguna vez.

Estos servos son pequeños motores" con sistemas de reducción, que accionan una palanca o engranaje en un recorrido de ida y vuelta, y pueden detenerse en cualquier posición intermedia.

Acoplados al timón de un barco, por ejemplo, permiten obtener cualquier posición deseada y una transición suave de una a la otra, con mucho más realismo en el accionar del modelo (figura 3).

 


 

 

Los servos, sin embargo, no son muy accesibles a nuestros montadores de radiocontrol (NOTA).

En la época en que lo articulo fue escrito. Hoy tenemos los tipos chinos de bajo costo.

 

No existiendo prácticamente industria nacional para estos dispositivos, los más abundantes son los importados (que pueden ser adquiridos, usados o nuevos en casas especializadas), pero su costo no es nada animador.

Un servo, normalmente, costará ai montador más que todos los componentes usados en el montaje del sistema de radiocontrol o incluso del propio modelo.

Y vea que para lograr un control perfecto en un avión, se debe usar mas de un servo (figura 4).

 


 

 

El montaje de un servo por el propio modelista tampoco es tarea simple.

Además del circuito electrónico que es bastante crítico y que debe ocupar un espacio mínimo, tenemos la parte mecánica, extremadamente delicada, que requiere engranajes y otras piezas, que deben ser totalmente realizados por el montador.

Estas piezas exigen la habilidad de un relojero y la disponibilidad de herramientas sofisticadas.

 

Como funcionan

En la figura 5 tenemos la estructura básica de un servo con realimentación o de "lazo cerrado", que es del tipo mas común.

 


 

 

 

Este servo presenta algunos inconvenientes de funcionamiento, aunque sea el más popular, entre ellos el consumo excesivo, incluso cuando no es accionado, y la dificultad de volver a la posición neutra exacta cuando se Io saca de ella.

En el circuito tenemos, entonces, una etapa transistorizada de entrada de donde se retira la señal de control del receptor.

Esta señal de control será una tensión "proporcional" al movimiento deseado, o sea, una tensión que variará entre 0,25 y 1V positivos y 0,25 y 1V negativos, según el caso (figura 6).

 


 

 

El movimiento será proporcional a esta tensión.

Esta tensión es amplificada y llevada a la segunda etapa del diagrama, que es la etapa de potencia, para el accionamiento de un motor.

El sentido de rotación del motor dependerá de la polaridad de la tensión de entrada amplificada.

En el sistema de engranajes del motor existe un pequeño potenciômetro cuya finalidad es sensar la posición del servo.

Asi, si el servo se encuentra en la posición central (0V de entrada) y aplicamos una señal que lo lleve a la mitad de su movimiento, 0,5V por ejemplo, lo que ocurre es lo siguiente: a medida que el sistema se mueve, el potenciômetro también es accionado de modo que reduzca la tensión aplicada al motor cuando éste se acerca a la posición deseada. Así, al llegar al punto deseado, la tensión se reduce a cero en el motor y el mismo se detiene.

EI potenciômetro funciona por lo tanto como un "eslabôn de realimentaciôn", que permite obtener cualquier posición para el servo, dependiendo de la tensión de la señal aplicada.

Es claro que, si la serial de entrada desaparece, el sistema “siente" esto, y el motor se ve sometido a una tensión que lo hace girar nuevamente buscando una nueva posición de equilibrio.

EI circuito completo de un sistema de servo de este tipo aparece en la figura 7.

 


 

 

Los transistores Q1 y Q2 forman el circuito de entrada, verificándose que en el emisor de Q2 tenemos la conexión del potenciômetro de realimentación accionado por el motor.

Q3, Q4 y Q5 forman la etapa final de amplificación, que excita la etapa de potencia.

Esta etapa de potencia, formada por transistores complementarios, debe ser capaz de controlar las elevadas corrientes de los servos, que llegan a los 500mA o más, según el caso.

Como se trata de un circuito que sirve solamente como ejemplo de funcionamiento, no damos los valores de los componentes.

Vea que la fuente usada debe ser simétrica de 4,8V para este caso.

 

Problemas de este sistema

La parte mas delicada del sistema de servos con realimentación por potenciômetro es el proprio potenciômetro, que está sujeto a un desgaste del elemento resistivo o á un funcionamiento anormal debido a la acumulación de polvo.

En el caso de aeromodelos, la vibración del motor contribuye a deñar con facilidad este elemento del circuito, provocando en poco tiempo su funcionamiento anormal.

Por lo tanto, es necesario hacer una limpieza frecuente o incluso cambiar periodicamente este componente para garantizar el perfecto funcionamiento del servo.

En los sistemas modernos, se consigue un funcionamiento más confiable de estos servos, con su sustitución por un capacitor variable.

El sensor de posición consiste entonces en un circuito digital que opera por frecuencia y no por variación de resistencia. Está claro que en estos casos tenemos una complejidad mayor para el sistema.

 

18.969MBMemory Usage45.78msRequest 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" => 1748836456 "last" => 1748836456...
registry
array:3 [ "data" => [] "initialized" => false "separator" => "." ]
user
array:21 [ "id" => 0 "name" => null "username" => null "email" => null "password" => "***r...
  • afterLoad (85.36KB) (195μs)
  • afterInitialise (1.14MB) (5.47ms)
  • afterRoute (179.21KB) (1.48ms)
  • beforeRenderComponent com_content (100.98KB) (466μs)
  • Before Access::preloadComponents (all components) (33.44KB) (376μs)
  • After Access::preloadComponents (all components) (107.06KB) (544μs)
  • Before Access::preloadPermissions (com_content) (1.57KB) (8μs)
  • After Access::preloadPermissions (com_content) (16.19MB) (23.34ms)
  • Before Access::getAssetRules (id:8 name:com_content) (480.06KB) (1.72ms)
  • After Access::getAssetRules (id:8 name:com_content) (7.36KB) (31μs)
  • afterRenderComponent com_content (432.14KB) (5.21ms)
  • afterDispatch (2.25KB) (41μs)
  • beforeRenderRawModule mod_articles_category (Banco de Circuitos) (422.53KB) (1.53ms)
  • afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.43KB) (279μs)
  • beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (87μs)
  • afterRenderRawModule mod_finder (Busca_inteligente) (63.02KB) (1.03ms)
  • beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (548μs)
  • afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (64μs)
  • beforeRenderModule mod_finder (Busca_inteligente) (6.64KB) (187μs)
  • afterRenderModule mod_finder (Busca_inteligente) (4.44KB) (49μs)
  • afterRender (296.75KB) (3.02ms)
  • 1 x After Access::preloadPermissions (com_content) (16.19MB) (50.99%)
    23.34ms
    1 x afterInitialise (1.14MB) (11.95%)
    5.47ms
    1 x afterRenderComponent com_content (432.14KB) (11.39%)
    5.21ms
    1 x afterRender (296.75KB) (6.6%)
    3.02ms
    1 x Before Access::getAssetRules (id:8 name:com_content) (480.06KB) (3.76%)
    1.72ms
    1 x beforeRenderRawModule mod_articles_category (Banco de Circuitos) (422.53KB) (3.33%)
    1.53ms
    1 x afterRoute (179.21KB) (3.24%)
    1.48ms
    1 x afterRenderRawModule mod_finder (Busca_inteligente) (63.02KB) (2.25%)
    1.03ms
    1 x beforeRenderModule mod_articles_category (Banco de Circuitos) (9.27KB) (1.2%)
    548μs
    1 x After Access::preloadComponents (all components) (107.06KB) (1.19%)
    544μs
    1 x beforeRenderComponent com_content (100.98KB) (1.02%)
    466μs
    1 x Before Access::preloadComponents (all components) (33.44KB) (0.82%)
    376μs
    1 x afterRenderRawModule mod_articles_category (Banco de Circuitos) (15.43KB) (0.61%)
    279μs
    1 x afterLoad (85.36KB) (0.43%)
    195μs
    1 x beforeRenderModule mod_finder (Busca_inteligente) (6.64KB) (0.41%)
    187μs
    1 x beforeRenderRawModule mod_finder (Busca_inteligente) (5.9KB) (0.19%)
    87μs
    1 x afterRenderModule mod_articles_category (Banco de Circuitos) (5.47KB) (0.14%)
    64μs
    1 x afterRenderModule mod_finder (Busca_inteligente) (4.44KB) (0.11%)
    49μs
    1 x afterDispatch (2.25KB) (0.09%)
    41μs
    1 x After Access::getAssetRules (id:8 name:com_content) (7.36KB) (0.07%)
    31μs
    1 x Before Access::preloadPermissions (com_content) (1.57KB) (0.02%)
    8μs
23 statements were executed, 5 of which were duplicates, 18 unique12.42ms1.58MB
  • SELECT @@SESSION.sql_mode;32μs968B/libraries/src/Session/MetadataManager.php:184Copy
  • SELECT `session_id` FROM `incbmx_session` WHERE `session_id` = :session_id LIMIT 1108μ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)255μ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`327μ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)393μ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.69ms1.48MBParams/libraries/src/Access/Access.php:301Copy
  • SHOW FULL COLUMNS FROM `incbmx_assets`287μs2.02KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • SELECT * FROM `incbmx_assets` WHERE `name` = 'com_content.article.104'52μs912B/libraries/src/Table/Table.php:780Copy
  • SHOW FULL COLUMNS FROM `incbmx_content`262μs1.77KB/libraries/vendor/joomla/database/src/Mysqli/MysqliDriver.php:587Copy
  • UPDATE `incbmx_content` SET `hits` = (`hits` + 1) WHERE `id` = '104'124μ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`172μ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)212μ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`171μ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 ASC379μ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`167μs3.92KBParams/libraries/src/Categories/Categories.php:375Copy
  • SELECT `name`,`element` FROM `incbmx_extensions` WHERE `type` = 'plugin' AND `folder` = 'finder' AND `enabled` = 1140μ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` = :context62μ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` = 167μs1.37KBParams/administrator/components/com_scheduler/src/Model/TasksModel.php:465Copy
  • warningassets - No asset found for com_content.article.104, falling back to com_content
  • warningassets - No asset found for com_content.article.104, falling back to com_content
  • warningassets - No asset found for com_content.article.104, falling back to com_content
  • warningassets - No asset found for com_content.article.104, falling back to com_content
  • warningassets - No asset found for com_content.article.104, falling back to com_content
  • warningassets - No asset found for com_content.article.104, falling back to com_content
  • warningassets - No asset found for com_content.article.104, falling back to com_content
  • warningassets - No asset found for com_content.article.104, falling back to com_content
  • warningassets - No asset found for com_content.article.104, falling back to com_content
  • warningassets - No asset found for com_content.article.104, falling back to com_content