-using namespace std;
-
-int main() {
- cout << "Hello World!";
- return 0;
-}
-// prints 'Hi, Tom' to STDOUT.
-```
-
-```python
-class Person:
- def __init__(self, name, age):
- self.name = name
- self.age = age
-
-p1 = Person("John", 36)
-
-print(p1.name)
-print(p1.age)
-```
diff --git a/_posts/2016-08-12-my-example-post.md b/_posts/2016-08-12-my-example-post.md
deleted file mode 100644
index d64a84dd1a8..00000000000
--- a/_posts/2016-08-12-my-example-post.md
+++ /dev/null
@@ -1,13 +0,0 @@
----
-layout: post
-categories: junk
----
-
-Eos eu docendi tractatos sapientem, brute option menandri in vix, quando vivendo accommodare te ius. Nec melius fastidii constituam id, viderer theophrastus ad sit, hinc semper periculis cum id. Noluisse postulant assentior est in, no choro sadipscing repudiandae vix. Vis in euismod delenit dignissim. Ex quod nostrum sit, suas decore animal id ius, nobis solet detracto quo te.
-
-{% comment %}
-Might you have an include in your theme? Why not try it here!
-{% include my-themes-great-include.html %}
-{% endcomment %}
-
-No laudem altera adolescens has, volumus lucilius eum no. Eam ei nulla audiam efficiantur. Suas affert per no, ei tale nibh sea. Sea ne magna harum, in denique scriptorem sea, cetero alienum tibique ei eos. Labores persequeris referrentur eos ei.
diff --git a/_posts/2023-04-25-project-plan.md b/_posts/2023-04-25-project-plan.md
new file mode 100644
index 00000000000..df97c260150
--- /dev/null
+++ b/_posts/2023-04-25-project-plan.md
@@ -0,0 +1,196 @@
+---
+layout: post
+title: CESE project plan
+subtitle: Development of mobile robot for monocular SLAM
+author: Gonzalo G. Fernandez
+categories: plan
+# banner:
+# video: https://vjs.zencdn.net/v/oceans.mp4
+# loop: true
+# volume: 0.8
+# start_at: 8.5
+# image: https://bit.ly/3xTmdUP
+# opacity: 0.618
+# background: "#000"
+# height: "100vh"
+# min_height: "38vh"
+# heading_style: "font-size: 4.25em; font-weight: bold; text-decoration: underline"
+# subheading_style: "color: gold"
+tags: cese project-planning
+top: 1
+sidebar: []
+---
+
+*Esta planificación fue realizada en el curso de Gestión de proyectos entre el 25 de abril de 2023 y el 13 de junio de 2023*
+
+## Descripción técnica conceptual del proyecto a realizar
+
+La navegación autónoma ha sido un tema de investigación activo durante décadas, pero
+recientemente ha ganado una atención sin precedentes gracias a los avances en tecnologı́as
+como la inteligencia artificial y la robótica.
+
+La navegación autónoma se refiere a la capacidad de un sistema para planificar y ejecutar sus
+propias acciones de manera autónoma, sin la necesidad de una intervención humana constante.
+La capacidad de un sistema para tomar decisiones en forma autónoma en su navegación a través
+del entorno es crucial para una amplia variedad de aplicaciones, desde los vehı́culos autónomos y
+los drones, hasta los robots industriales y los sistemas de logı́stica.
+
+La investigación de técnicas de bajo costo es importante para permitir que la tecnologı́a sea
+accesible para un mayor número de aplicaciones y usuarios. Esto es especialmente importante
+en paı́ses en desarrollo o en áreas con recursos limitados, donde los sistemas de navegación
+autónoma pueden ser prohibitivamente costosos.
+
+La restricción económica en el desarrollo de nuevas técnicas también puede mejorar la eficiencia
+y la efectividad de los sistemas de navegación autónoma, al permitir que los recursos sean
+utilizados de manera más efectiva y maximizar la vida útil de los componentes del sistema.
+La odometrı́a visual es una técnica de localización y navegación que se utiliza en robótica
+para estimar la posición y orientación de un robot en su entorno, en función de la información
+visual capturada por sus cámaras. La información de las imágenes capturadas permite estimar
+la cantidad de movimiento y la dirección del vehı́culo, permitiendo calcular su posición y
+orientación en relación con su posición inicial.
+
+Las técnicas de odometrı́a visual son particularmente útiles en entornos donde el movimiento
+del robot es predominantemente lateral. Además, se pueden utilizar en combinación con otras
+técnicas de localización y navegación, como la odometrı́a inercial o la SLAM (Simultaneous
+Localization and Mapping), para mejorar la precisión y la fiabilidad de la localización del robot.
+La SLAM es una técnica de visión por computadora que permite a un robot móvil construir un
+mapa del entorno en el que se encuentra, mientras estima en simultaneo su propia posición y
+orientación en ese entorno. En el caso de SLAM monocular, se utiliza una única cámara para
+capturar imágenes del entorno.
+
+La Fundación Fulgor realiza diversas actividades de investigación. Dentro del campo de
+navegación autónoma, una de las ramas de interés es la de algoritmos de SLAM monocular
+en conjunto con la odometrı́a inercial, por las diferentes ventajas que presenta sobre otros
+métodos. Es por esto que se han realizado experimentos en el marco de la Práctica Profesional
+Supervisada de la estudiante de grado Evangelina Castellano, implementando y analizando el
+desempeño de diferentes algoritmos en entornos de simulación.
+
+Actualmente, uno de los objetivos en esta lı́nea de investigación es poder migrar los algoritmos estudiados en un entorno virtual a un sistema fı́sico, para evaluar su desempeño en un entorno real. La experimentación en entornos virtuales se llevó a cabo con el framework ROS 2 (Robot Operating System 2 ). Dada la naturaleza modular de este framework, la migración consiste en el reemplazo de un módulo encapsulado que contenga el algoritmo.
+
+## Identificación y análisis de los interesados
+
+| Rol | Nombre y Apellido | Organización | Puesto |
+|-----|-------------------|--------------|--------|
+| Cliente | Ing. Leandro Borgnino | Fundación Fulgor | Investigador |
+| Responsable | Ing. Gonzalo Gabriel Fernandez | FIUBA | Estudiante |
+| Orientador | Dr. Ing. Fabio Ardiani | Nimble One | Director de Trabajo Final |
+| Equipo | Evangelina Castellano | Universidad Nacional de Córdoba | Pasante |
+| Equipo | Fabio Gazzoni | Universidad Nacional de Córdoba | Pasante |
+| Usuario final | Grupos de investigación | Fundación Fulgor | - |
+
+- **Cliente:**
+
+El Ing. Leandro Borgnino realizando su doctorado en la Fundación Fulgor y posee conocimiento sobre los algoritmos utilizados para navegación autónoma a alto nivel. Domina el área de aplicación y puede resolver dudas específicas sobre los requerimientos funcionales que debe cumplir el proyecto.
+
+- **Orientador:**
+
+El Dr. Ing. Fabio Ardiani finalizó en el año 2022 su doctorado en Mecatrónica, Robótica e Ingeniería de Automatización en Isae-Supaero, Toulouse, Francia. Actualmente se encuentra trabajando en Nimble One como investigador especialista en locomoción robótica. Se encuentra ubicado en Tolouse, Fracia. Se mantendrán reuniones una a uno cada dos semanas y reuniones con todo el equipo cuando se considere necesario y de acuerdo a su disposición. La periodicidad de las reuniones se ajustará segun lo demanden las actividades del proyecto y la disponibilidad del responsable y el orientador.
+
+- **Equipo:**
+
+Los estudiantes Evangelina Castellano y Fabio Gazzoni se encuentran realizando su Práctica Profesional Supervisada (PPS) en la Fundación Fulgor. Al finalizar su PPS continuarán en la institución para realizar su proyecto final de grado. Es necesario planificar teniendo en cuenta que la dedicación es simple, es decir, entre 4 y 5 horas diarias. Integrarán el equipo de trabajo junto con el responsable.
+
+- **Usuario final:**
+
+No esta representado por una persona particular. Una vez finalizado el proyecto el prototipo quedará disponible en la Fundación Fulgor para su uso de parte de grupos de investigación.
+
+## Entregables principales del proyecto
+
+Los entregables del proyecto son:
+- Plataforma de hardware que conforma el prototipo funcional
+- Documentación del hardware e interconexión de los módulos componentes
+- Código fuente del driver de la IMU
+- Documentación del driver de la IMU
+- Código fuente del driver de la cámara
+- Docummentación del driver de la cámara
+- Código fuente del firmware con el algoritmo de SLAM monocular y micro-ROS
+- Código fuente del agente de ROS 2 utilizado
+- Documentación y manual para configuración y uso del entorno de ROS 2
+- Documentación del estado del arte de SLAM y del algoritmo seleccionado
+- Manual de uso del hardware
+- Informe final
+
+## Desglose del trabajo en tareas
+
+1. Planificación del proyecto (70 h)
+ 1. Identificación y contacto con los interesados (7 h)
+ 2. Definición del propósito y alcance del proyecto (10 h)
+ 3. Definición de los requerimientos y entregables (20 h)
+ 4. Desglose del trabajo en tareas y obtención del diagrama de Gantt (20 h)
+ 5. Análisis de riesgos, gestión de calidad y definición de procesos de cierre (13 h)
+2. Definición técnica del robot móvil a diseñar
+ 1. Investigación del estado del arte de la robótica móvil
+ 2. Selección del tipo de robot móvil a desarrollar
+ 3. Descripción matemática del robot seleccionado
+2. [Selección y documentación del hardware necesario]({% post_url 2023-12-30-hardware-selection %})
+2. Setup del entorno de trabajo para desarrollo del software necesario (5 h)
+3. Implementación de micro-ROS en el sistema embebido (18 h)
+ 1. [Introducción a micro-ROS]({% post_url 2023-05-12-microROS-and-ROS-2 %}) (4 h)
+ 2. Incorporación de micro-ROS en el microcontrolador (8 h)
+ 3. Setup de agente de ROS 2 y comunicación con el sistema embebido (2 h)
+ 4. Documentación del proceso (4 h)
+4. Desarrollo de driver para la IMU (40 h)
+ 1. Selección y adquisición de la IMU a utilizar (2 h)
+ 2. Implementación de driver en lenguaje C para el sistema embebido (30 h)
+ 3. Documentación del driver (8 h)
+5. Integración de la IMU en el sistema (60 h)
+ 1. Integración del driver de la IMU con el sistema con micro-ROS (4 h)
+ 2. Repaso (e investigación) de técnicas de fusión sensorial (8 h)
+ 3. Implementación de algoritmos de fusión sensorial (30 h)
+ 4. Visualizacion de la información obtenida con la IMU mediante las herramientas de ROS 2 (10 h)
+ 5. Evaluación parcial y documentación de resultados (milestone) (8 h)
+6. Desarrollo de driver para la cámara (53 h)
+ 1. Selección y adquisación de cámara a utilizar (3 h)
+ 2. Implementación de driver en lenguaje C para el sistema embebido (40 h)
+ 3. Documentación del driver (10 h)
+7. Integración de la cámara en el sistema (26 h)
+ 1. Integración del driver de la cámara con el sistema con micro-ROS (6 h)
+ 2. Visualización de la información obtenida con la cámara mediante las herramientas de ROS 2 (12 h)
+ 3. Evaluación parcial y documentación de resultados (milestone) (8 h)
+8. Implementación de algoritmo de SLAM monocular (305 h)
+ 1. Introducción a la navegación inercial y SLAM monocular, investigación de estado del arte (15 h)
+ 2. Investigación de algoritmos de SLAM monocular y selección de uno de ellos (30 h)
+ 3. Implementación del algoritmo seleccionado en un entorno de simulación (40 h)
+ 4. Optimización del algoritmo implementado en el entorno de simulación (40 h)
+ 5. Evaluación integral de los componentes del sistema (20 h)
+ 6. Implementación del algoritmo seleccionado en el sistema embebido (40 h)
+ 7. Optimización del algoritmo implementado en el sistema embebido (40 h)
+ 8. Evaluación final de resultados (milestone) (40 h)
+ 9. Documentación técnica del algoritmo sleccionado y resumen del estado del arte (40 h)
+9. Proceso de cierre (91 h)
+ 1. Análisis de cumplimiento de objetivos y requerimientos con el director (2 h)
+ 2. Análisis de cumplimiento del plan original (diagrama de Gantt) (2 h)
+ 3. Análisis de cumplimiento de objetivos y requerimientos con el cliente (2 h)
+ 4. Capacitación del cliente sobre el prototipo realizado
+ 5. Elaboración de memoria técnica (40 h)
+ 6. Corrección de memoria técnica (20 h)
+ 7. Preparación de defensa pública (20 h)
+ 8. Defensa pública (2 h)
+ 9. Reunión de cierre con el director (1 h)
+ 10. Reunión de cierre con el cliente y el equipo de trabajo (2 h)
+
+Cantidad total de horas: 668 h
+
+## Diagrama de Activity On Node
+
+Las tareas expuestas en el diagrama de *Activity On Node*, se encuentran detalladas en la siguiente tabla, con su código, duración y tareas predecesoras.
+
+| Código | Predecesora | Descripción | Duración |
+|--------|-------------|-------------|----------|
+| 1 | | Planificación del proyecto | 70 h |
+
+
+## Proceso de cierre
+
+Una vez finalizado el proyecto se realizarán las siguientes actividades:
+
+- Análisis del grado de cumplimiento de los objetivos y requerimientos junto con el Dr. Ing. Fabio Ardiani.
+- Análisis de cumplimiento de la versión original del plan de trabajo, contrastando el registro de actividades realizadas con el diagrama de Gantt original.
+- Análisis del grado de cumplimiento de los objetivos y requerimientos junto con el cliente, el Ing. Leandro Borgnino.
+- Elaboración de un documento con todos los problemas que surgieron durante el desarrollo del proyecto y las soluciones encontradas.
+- Elaboración de un documento con las actividades que no se alcanzaron a realizar en el tiempo estimado y todas aquellas actividades realizadas que no se contemplaron en el plan original.
+- Elaboración de un documento con el trabajo a futuro, que sirva como base de un plan de proyecto que continue la misma línea de investigación y desarrollo.
+- Defensa pública del proyecto por parte del responsable.
+- Reunión privada con el equipo de trabajo para compartir *feedback* sobre la experiencia obtenida en el lapso del proyecto.
+- Reunión virtual, organizada por el responsable, con el Dr. Ing. Fabio Ardiani como acto de agradecimiento.
+- Reunión con el Ing. Leandro Borgnino y el equipo de trabajo, organizada por el responsable, para dar un cierre al proyecto y evaluar los próximos proyectos y actividades a realizar en conjunto.
diff --git a/_posts/2023-05-12-microROS-and-ROS-2.md b/_posts/2023-05-12-microROS-and-ROS-2.md
new file mode 100644
index 00000000000..b8fea769a78
--- /dev/null
+++ b/_posts/2023-05-12-microROS-and-ROS-2.md
@@ -0,0 +1,36 @@
+---
+layout: post
+title: microROS and ROS 2
+subtitle: Development of mobile robot for monocular SLAM
+author: Gonzalo G. Fernandez
+categories: cese
+excerpt_image: /assets/images/ros-humble.jpg
+# banner:
+# video: https://vjs.zencdn.net/v/oceans.mp4
+# loop: true
+# volume: 0.8
+# start_at: 8.5
+# image: images/banners/ROS-Industrial-Logo.png
+# opacity: 0.618
+# background: "#000"
+# height: "100vh"
+# min_height: "38vh"
+# heading_style: "font-size: 4.25em; font-weight: bold; text-decoration: underline"
+# subheading_style: "color: gold"
+tags: cese microROS ROS2
+sidebar: []
+---
+
+![banner](/assets/images/banners/ROS-Industrial-Logo.png)
+
+## Introducción
+
+El entorno ROS es un framework de software libre y de código abierto diseñado para permitir el desarrollo de aplicaciones robóticas distribuidas. Este framework proporciona un conjunto de herramientas para la creación, gestión, depuración y análisis de sistemas robóticos.
+
+La segunda versión de la herramienta, denominada ROS 2, fue desarrollada por la comunidad con el objetivo de mejorar la escalabilidad, la fiabilidad y la seguridad del software. Una de sus principales caracterı́sticas es que está diseñado para ser modular y extensible, lo que significa que los desarrolladores pueden elegir los componentes que necesitan para sus aplicaciones y utilizarlos de manera flexible. También se enfoca en proporcionar una abstracción de hardware más clara y permitir el uso de diferentes sistemas operativos y arquitecturas.
+
+La herramienta micro-ROS es una implementación de ROS 2 diseñada especı́ficamente para sistemas embebidos y de tiempo real. A diferencia de ROS 2, que se ejecuta en sistemas operativos de propósito general, micro-ROS se ejecuta en sistemas operativos de tiempo real (como NuttX y FreeRTOS), lo que permite el desarrollo de sistemas robóticos en entornos de baja potencia y recursos limitados.
+
+Como puede observarse en la figura 2, micro-ROS proporciona una capa de abstracción que permite la comunicación entre los sistemas embebidos y los nodos de ROS 2 en otros sistemas. Esto significa que los desarrolladores pueden crear sistemas robóticos distribuidos, que utilicen tanto sistemas embebidos como sistemas de propósito general y que todos ellos puedan comunicarse a través de la misma plataforma.
+
+![micro-ROS architecture](/assets/images/micro-ROS_architecture.png)
\ No newline at end of file
diff --git a/_posts/2023-12-30-hardware-selection.md b/_posts/2023-12-30-hardware-selection.md
new file mode 100644
index 00000000000..b1c041232d3
--- /dev/null
+++ b/_posts/2023-12-30-hardware-selection.md
@@ -0,0 +1,24 @@
+---
+layout: post
+title: Hardware selection and description
+subtitle: Embedded platform selection for mobile robot
+author: Gonzalo G. Fernandez
+categories: cese
+excerpt_image: /assets/images/stm32-429zi.jpg
+# banner:
+# video: https://vjs.zencdn.net/v/oceans.mp4
+# loop: true
+# volume: 0.8
+# start_at: 8.5
+# image: images/banners/ROS-Industrial-Logo.png
+# opacity: 0.618
+# background: "#000"
+# height: "100vh"
+# min_height: "38vh"
+# heading_style: "font-size: 4.25em; font-weight: bold; text-decoration: underline"
+# subheading_style: "color: gold"
+tags: cese stm32 xilinx embedded-system
+sidebar: []
+---
+
+## Introducción
\ No newline at end of file
diff --git a/_posts/2023-12-30-mobile-robot-mathematical-analysis.md b/_posts/2023-12-30-mobile-robot-mathematical-analysis.md
new file mode 100644
index 00000000000..9b6c5db0a0d
--- /dev/null
+++ b/_posts/2023-12-30-mobile-robot-mathematical-analysis.md
@@ -0,0 +1,46 @@
+---
+layout: post
+title: Wheeled mobile robot mathematical analysis
+subtitle: Wheeled robot mathematical description
+author: Gonzalo G. Fernandez
+categories: cese
+excerpt_image: /assets/images/stm32-429zi.jpg
+# banner:
+# video: https://vjs.zencdn.net/v/oceans.mp4
+# loop: true
+# volume: 0.8
+# start_at: 8.5
+# image: images/banners/ROS-Industrial-Logo.png
+# opacity: 0.618
+# background: "#000"
+# height: "100vh"
+# min_height: "38vh"
+# heading_style: "font-size: 4.25em; font-weight: bold; text-decoration: underline"
+# subheading_style: "color: gold"
+tags: cese robotics mobile-robotics
+sidebar: []
+---
+
+## Introduction
+
+#TODO: Dar clasificación de robot móviles
+
+El principal objetivo en el diseño mecánico del robot móvil a desarrollar como solución para la fundación fulgor es obtener una configuración de robot móvil terrestre mecánicamente sencilla, con baja complejidad en su control tal que permita enfocar el esfuerzo en el desarrollo y evaluación de algoritmos de SLAM sin que los aspectos mencionados previamente representen un obstáculo.
+
+Wheeled robots comprise one or more driven wheels and haave optional passive or caster wheels and possibly steered wheels. Most designs require two motors for driving (and steering) a mobile robot.
+
+![wheeled-robots](/assets/images/wheeled-robots.png)
+
+The design on the left-hand side of the figure has a single driven wheel that is also steered. It requires two motors, one for driving the wheel and one for turning. A disadvantage of this design is that the robot cannot turn on the spot, since the driven wheel is not located at its center. Therefore, the trajectory planning can be more complex than the one for a different configuration.
+
+The robot design in the middle is called *differential drive* and is one of the most commonly used mobile robot designs. The combination of two driven wheels allows the robot to be driven straight, in a curve, or to turn on the spot. Another advantage of this design is that motors and wheels are in fixed positions and do not need to be turned as in the previous design. This simplifies the robot mechnics considerably.
+
+Finally, on the right-hand side of the figure is the so-called *Ackermann Steering*, which is the standard drive and steering system of a rear-driven passenger car. It has one motor for driving both rear wheels via a differential box and one motor for combined steering of both front wheels.
+
+A special case of a wheeled robot is the omni-directional *Mecanum drive* robot, but it is discarded due to the cost and accesibility of such wheels.
+
+One disadvantage of all wheeled robots is that they require a flat surface for driving. Tracked robots are more flexible and can navigate over rough terrain. The main disadvantage, and the reason for not being considered for the project, is that they cannot navigate as accurately as a wheeled robot.
+
+Legged robots are the final category of land-based mobile robots. Like tracked robots, they can navigate over rough terrain, There are many different designs for legged robots, depending on their number of legs. The general rule is: the more legs, the easier to balance. These kind of robots are not considered for the project for being highly complex both mecanically and their control.
+
+The configuration selected for the project is the differential drive, being the most mechanically simple and versatile.
\ No newline at end of file
diff --git a/about.html b/about.html
index 8d027a1faaf..3556c573f30 100644
--- a/about.html
+++ b/about.html
@@ -6,12 +6,24 @@
About
-:art: Yet another theme for elegant writers with modern flat style
-and beautiful night mode.
+ :art: Yet another theme for elegant writers with modern flat style
+ and beautiful night mode.
-Hey, nice to meet you, you found this Jekyll theme. Here the yet another
-theme is a modern theme, and it's quite clear, clean and neat for writers
-and posts.
+ Hey, nice to meet you, you found this Jekyll theme. Here the yet another
+ theme is a modern theme, and it's quite clear, clean and neat for writers
+ and posts.
+
+About the Fulgor Foundation
+
+Las áreas de foco estratégico de la Fundación consisten en tareas de fondo a realizar o valores y modalidades de trabajo
+a cultivar, que impregnan todos los programas y proyectos de la Fundación sin ser en sí mismos programas o proyectos.
+Las áreas de foco estratégico incluyen:
+
+
+ - Generación de Excelencia Académica, Científica y Tecnológica
+ - Fortalecimiento de los Valores Nacionales y Patrióticos en la Sociedad Argentina
+ - Fortalecimiento de la Cultura Nacional
+
\ No newline at end of file
diff --git a/assets/images/banners/ROS-Industrial-Logo.png b/assets/images/banners/ROS-Industrial-Logo.png
new file mode 100644
index 00000000000..6c331373ec9
Binary files /dev/null and b/assets/images/banners/ROS-Industrial-Logo.png differ
diff --git a/assets/images/micro-ROS_architecture.png b/assets/images/micro-ROS_architecture.png
new file mode 100644
index 00000000000..f5da224241a
Binary files /dev/null and b/assets/images/micro-ROS_architecture.png differ
diff --git a/assets/images/ros-humble.jpg b/assets/images/ros-humble.jpg
new file mode 100644
index 00000000000..a229e800abc
Binary files /dev/null and b/assets/images/ros-humble.jpg differ
diff --git a/assets/images/stm32-429zi.jpg b/assets/images/stm32-429zi.jpg
new file mode 100644
index 00000000000..1face9c1cb7
Binary files /dev/null and b/assets/images/stm32-429zi.jpg differ
diff --git a/assets/images/wheeled-robots.png b/assets/images/wheeled-robots.png
new file mode 100644
index 00000000000..7cf070acccf
Binary files /dev/null and b/assets/images/wheeled-robots.png differ
diff --git a/assets/images/yat-favicon-color.png b/assets/images/yat-favicon-color.png
new file mode 100644
index 00000000000..cb3e6d2acce
Binary files /dev/null and b/assets/images/yat-favicon-color.png differ
diff --git a/index.html b/index.html
index bdcbd8bf53d..9e7dd50145d 100644
--- a/index.html
+++ b/index.html
@@ -5,4 +5,4 @@
layout: home
title: Home
banner: "/assets/images/banners/home.jpeg"
----
+---
\ No newline at end of file