Skip to content

Commit

Permalink
added week 8 progess and resolved blog website sidebr issue
Browse files Browse the repository at this point in the history
  • Loading branch information
BkPankaj committed Jul 22, 2024
1 parent 6b05b83 commit 8c4ba55
Show file tree
Hide file tree
Showing 13 changed files with 305 additions and 176 deletions.
18 changes: 14 additions & 4 deletions docs/_config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -90,11 +90,21 @@ footer:
url: https://www.youtube.com/channel/UCC21Gpox7U1kT2yE6JDCW8g

defaults:
# _pages
# _posts
- scope:
path: ""
type: pages
type: posts
values:
layout: single
author_profile: true
breadcrumbs: true
read_time: true
read_time: true
comments: true
share: true
related: true
# _pages
- scope:
path: "_pages"
type: pages
values:
layout: single
author_profile: true
28 changes: 0 additions & 28 deletions docs/_pages/about.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,31 +2,3 @@
permalink: /about/
title: "About"
---


With circuits and code at their command, \
They craft the tech that will change the land, \
And among them stands a skilled engineer, \
Whose knowledge and talent are truly clear.

In robotics, they're at home, \
Designing machines that can freely roam, \
From delta arms to rovers for space, \
Their work has a truly innovative pace.

With Linux systems, they're well-versed, \
Their skills with protocols leave none immersed, \
And in RedHat, they're certified, \
A true expert in the tech they've applied.

They've worked with boards both big and small, \
From the STM32 to the ESP32, they've done it all, \
And in Robot Operating System, they've found, \
A platform where they truly abound.

So here's to this skilled engineer, \
Whose tech has the power to engineer, \
A better future for us all, \
With circuits and code, they'll answer the call.

-ChatGPT
3 changes: 2 additions & 1 deletion docs/_posts/2024-06-10-code-w6-7.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,8 @@ In my previous code, I tried to link the block and global ports by finding the n

* #### Major issue :
When I used the package block inside the composed block, it didn't generate Python scripts for the internal packages. However, the basic blocks did not have this issue.
Issue image:

Blank script and no internal script in the modules directory issue image:
![](../assets/images/thirteen.png)


Expand Down
41 changes: 41 additions & 0 deletions docs/_posts/2024-06-10-code-w8.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
title: "Coding Period Week 8: July 16 ~ July 22"
categories:
- Blog
permalink: /coding-week8/
toc_label: Table of Content
toc: true
sidebar:
nav: "docs"
---

In the eighth week's Monday meeting, we discussed the issues I faced last week and the major issues encountered with the demo application, specifically with the composed block feature. Mentors explained the concept and showed the workflow to address the problem using an encoder and decoder example. The major issue was a nested issue, similar to the hurdles experienced in week 3 regarding nested blocks. This week, I completely focused on the nested issue and achieved significant progress compared to week 3.
## Goals
- [x] Solve the blank dependencies issue - nested issue
- [x] Resolve the issue of nested Python files not appearing in the Modules directories - nested issue

## Images
Nested dependencies in .vc3/ .json file Level 2:
![](../assets/images/fourteen.png)

Nested dependencies in .vc3/ .json file Level 3:
![](../assets/images/fifteen.png)

Modules directory with all nested python files:
![](../assets/images/sixteen.png)


## Accomplishment and Challenges

* #### Analyzing the Week 3 Code for the Nested Issue
Dr. Jose Maria suggested in the meeting to revisit the basics and look for solutions in the internal architecture. Therefore, I recreated the issue from week 3. I wrote two codes: one where a new node is created according to dependencies and new wiring was made. However, this approach was not sustainable due to the potential complexity from multiple dependencies. I dropped that idea. The second approach was recursion-based on frontend side, aimed at getting all dependencies, but it resulted in blank dependencies. After analyzing this solution, I changed the recursion solution from the package level.

* #### Blank dependicies issue
Upon deeper analyzing into PackageBlockModel and factory.tsx, I observed that I had created nested dependencies that were not present in the interface of PackageBlockModel. I modified the dependency array for every script and added internal dependencies to the respective interface and methods. The solution was close to being resolve, but I took a different approach in week 3.

* #### Python script in modules directory issue
Initially, the circuit was not building, but the Save as function was working. Due to nested dependencies, the synthesis file could not be processed. I added a recursive solution to get the nested dependencies from the frontend, which was very challenging. The files were being created but not at all levels. After debugging, I found that the issue was the missing internal dependencies at each level and the improper assignment of keys. The above images attached show the progress made this week.

## PR Created
1. [https://github.com/JdeRobot/VisualCircuit/pull/322](https://github.com/JdeRobot/VisualCircuit/pull/322)

50 changes: 45 additions & 5 deletions docs/_site/feed.xml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.9.5">Jekyll</generator><link href="http://localhost:4000/gsoc2024-Pankaj_Borade/feed.xml" rel="self" type="application/atom+xml" /><link href="http://localhost:4000/gsoc2024-Pankaj_Borade/" rel="alternate" type="text/html" /><updated>2024-07-15T21:59:33+05:30</updated><id>http://localhost:4000/gsoc2024-Pankaj_Borade/feed.xml</id><title type="html">GSoC 2024 VisualCircuit Block Library - JdeRobot</title><author><name>Pankaj Keshav Borade</name></author><entry><title type="html">Coding Period Week 2: June 04 ~ June 10</title><link href="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week2/" rel="alternate" type="text/html" title="Coding Period Week 2: June 04 ~ June 10" /><published>2024-06-10T00:00:00+05:30</published><updated>2024-06-10T00:00:00+05:30</updated><id>http://localhost:4000/gsoc2024-Pankaj_Borade/code-w2</id><content type="html" xml:base="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week2/"><![CDATA[<p>Welcome to the second week of Coding Week progress. In the Monday meeting, we discussed the minimum tasks required for the midterm evaluation, reviewed the previous tasks, and assigned tasks for the next week. One of the issues in VisualCircuit is that it doesn’t generate internal scripts for nested blocks. This issue prevents the creation of complex robotics applications. To address this, I will be modifying the block composition this week. Additionally, I created a basic frontend test and installation process within GitHub Actions. This week, I will work on the first global test with GitHub Actions.</p>
<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="3.9.5">Jekyll</generator><link href="http://localhost:4000/gsoc2024-Pankaj_Borade/feed.xml" rel="self" type="application/atom+xml" /><link href="http://localhost:4000/gsoc2024-Pankaj_Borade/" rel="alternate" type="text/html" /><updated>2024-07-22T20:12:55+05:30</updated><id>http://localhost:4000/gsoc2024-Pankaj_Borade/feed.xml</id><title type="html">GSoC 2024 VisualCircuit Block Library - JdeRobot</title><author><name>Pankaj Keshav Borade</name></author><entry><title type="html">Coding Period Week 2: June 04 ~ June 10</title><link href="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week2/" rel="alternate" type="text/html" title="Coding Period Week 2: June 04 ~ June 10" /><published>2024-06-10T00:00:00+05:30</published><updated>2024-06-10T00:00:00+05:30</updated><id>http://localhost:4000/gsoc2024-Pankaj_Borade/code-w2</id><content type="html" xml:base="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week2/"><![CDATA[<p>Welcome to the second week of Coding Week progress. In the Monday meeting, we discussed the minimum tasks required for the midterm evaluation, reviewed the previous tasks, and assigned tasks for the next week. One of the issues in VisualCircuit is that it doesn’t generate internal scripts for nested blocks. This issue prevents the creation of complex robotics applications. To address this, I will be modifying the block composition this week. Additionally, I created a basic frontend test and installation process within GitHub Actions. This week, I will work on the first global test with GitHub Actions.</p>

<h2 id="goals">Goals</h2>
<ul class="task-list">
Expand Down Expand Up @@ -206,11 +206,51 @@ Selenium based first automated global test:</p>
</li>
<li>
<h4 id="major-issue-">Major issue :</h4>
<p>When I used the package block inside the composed block, it didn’t generate Python scripts for the internal packages. However, the basic blocks did not have this issue.
Issue image:
<img src="../assets/images/thirteen.png" alt="" /></p>
<p>When I used the package block inside the composed block, it didn’t generate Python scripts for the internal packages. However, the basic blocks did not have this issue.</p>
</li>
</ul>]]></content><author><name>Pankaj Keshav Borade</name></author><category term="Blog" /><summary type="html"><![CDATA[All the issues and possible cases of composed blocks were resolved last week. In the Monday meeting on July 1st, I showed a dummy example of an adder using composed blocks, and the mentors discussed the robotics application that needs to be developed using the composed block feature. In the 6th week, I was busy with personal work and unable to complete my tasks on time, so I requested an extension for the 6th week’s work to be done in the 7th week. During the 6th week, I searched for Gazebo worlds and downloaded several open-source ones. My initial plan was to develop the drone gymkhana of RoboticsAcademy using composed blocks. However, it was not available in the newer version of RADI, so I could not obtain the world and models from RoboticsInfrastructure. I decided to go with the Follow Road exercise from RA, as it was already developed but with an earlier version of VC. I also encountered a major issue in composed block that I need to discuss with the mentors. Goals Develop the Robotics Application with composed block (Major issue found)]]></summary></entry><entry><title type="html">Coding Period Week 1: May 27 ~ June 03</title><link href="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week1/" rel="alternate" type="text/html" title="Coding Period Week 1: May 27 ~ June 03" /><published>2024-06-03T00:00:00+05:30</published><updated>2024-06-03T00:00:00+05:30</updated><id>http://localhost:4000/gsoc2024-Pankaj_Borade/code-w1</id><content type="html" xml:base="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week1/"><![CDATA[<p>From here onwards Coding period begins, During the Monday meeting, mentors discussed the blocks in VisualCircuit resources and initial tests with GitHub Actions. Additionally, I had some doubts about the VC resources repository, which were clarified by the mentors.</p>
</ul>

<p>Blank script and no internal script in the modules directory issue image:
<img src="../assets/images/thirteen.png" alt="" /></p>]]></content><author><name>Pankaj Keshav Borade</name></author><category term="Blog" /><summary type="html"><![CDATA[All the issues and possible cases of composed blocks were resolved last week. In the Monday meeting on July 1st, I showed a dummy example of an adder using composed blocks, and the mentors discussed the robotics application that needs to be developed using the composed block feature. In the 6th week, I was busy with personal work and unable to complete my tasks on time, so I requested an extension for the 6th week’s work to be done in the 7th week. During the 6th week, I searched for Gazebo worlds and downloaded several open-source ones. My initial plan was to develop the drone gymkhana of RoboticsAcademy using composed blocks. However, it was not available in the newer version of RADI, so I could not obtain the world and models from RoboticsInfrastructure. I decided to go with the Follow Road exercise from RA, as it was already developed but with an earlier version of VC. I also encountered a major issue in composed block that I need to discuss with the mentors. Goals Develop the Robotics Application with composed block (Major issue found)]]></summary></entry><entry><title type="html">Coding Period Week 8: July 16 ~ July 22</title><link href="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week8/" rel="alternate" type="text/html" title="Coding Period Week 8: July 16 ~ July 22" /><published>2024-06-10T00:00:00+05:30</published><updated>2024-06-10T00:00:00+05:30</updated><id>http://localhost:4000/gsoc2024-Pankaj_Borade/code-w8</id><content type="html" xml:base="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week8/"><![CDATA[<p>In the eighth week’s Monday meeting, we discussed regarding issues I have faced in last week and major issues coming in between the demo application with composed block feature. Mentors explained the concept and showed the work path for problem with encoder and decoder example. The major issue was nested issue, went through what hurdles came in week 3 progress of nested block. So In this week I have completely worked on the nested issue. Also achieved significant work compared to week 3 issue.</p>
<h2 id="goals">Goals</h2>
<ul class="task-list">
<li class="task-list-item"><input type="checkbox" class="task-list-item-checkbox" disabled="disabled" checked="checked" />Solve the blank dependicies issue - nested issue</li>
<li class="task-list-item"><input type="checkbox" class="task-list-item-checkbox" disabled="disabled" checked="checked" />Nested python files not coming in Modules directories issue - nested issue</li>
</ul>

<h2 id="accomplishment-and-challenges">Accomplishment and Challenges</h2>

<ul>
<li>
<h4 id="analyzing-the-3rd-week-code-of-nested-issue">Analyzing the 3rd week code of nested issue</h4>
<p>As Dr.JoseMaria added in meeting go to the basics and see solution at internal architecture. So I again recreated issue in 3rd week solution I wrote two code one having the script such as new node is created according to dependicies and then new wiring were made but that was no sustainable as there can many dependicies with many internal dependicies so that will create more complex links so after analyzing I dropped that idea. Now second was recurssion based getting all dependicies in this there was blank dependicies came. So I tried analyzing this solution but didn’t got any improvement but I changed this recurssion solution from package level.</p>
</li>
<li>
<h4 id="blank-dependicies-issue">Blank dependicies issue</h4>
<p>As I went deeper inside PackageBlockModel and factory.tsx. I observed I created nested dependicies but that was not present at inteface of PackageBlockModel. So I changed the array of dependency from every script and added internal dependicies respective interface and methods. The solution was very close but I took other way in 3rd week time.</p>
</li>
<li>
<h4 id="python-script-in-modules-directory-issue">Python script in modules directory issue</h4>
<p>First of all the circuit was not building but Save as working. As there was nested dependeicies synthesis file not able to processed. So I added recurssive solution for getting the nested dependices from frontend and it was very challenging as the files were creating but not all levels so I also after debugging I found that issue was missing of each level internal dependicies also key was not properly assigned. Above are the images attached of progress this week.</p>
</li>
</ul>

<p>Normal circuit to be converted for block:
<img src="../assets/images/eight.png" alt="" /></p>

<p>Global input ouput port selection :
<img src="../assets/images/nine.png" alt="" /></p>

<p>Generated block:
<img src="../assets/images/seven.png" alt="" /></p>

<p>Internal block structure:
<img src="../assets/images/ten.png" alt="" /></p>

<h2 id="pr-created">PR Created</h2>
<ol>
<li><a href="https://github.com/JdeRobot/VisualCircuit/pull/322">https://github.com/JdeRobot/VisualCircuit/pull/322</a></li>
</ol>]]></content><author><name>Pankaj Keshav Borade</name></author><category term="Blog" /><summary type="html"><![CDATA[In the eighth week’s Monday meeting, we discussed regarding issues I have faced in last week and major issues coming in between the demo application with composed block feature. Mentors explained the concept and showed the work path for problem with encoder and decoder example. The major issue was nested issue, went through what hurdles came in week 3 progress of nested block. So In this week I have completely worked on the nested issue. Also achieved significant work compared to week 3 issue. Goals Solve the blank dependicies issue - nested issue Nested python files not coming in Modules directories issue - nested issue]]></summary></entry><entry><title type="html">Coding Period Week 1: May 27 ~ June 03</title><link href="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week1/" rel="alternate" type="text/html" title="Coding Period Week 1: May 27 ~ June 03" /><published>2024-06-03T00:00:00+05:30</published><updated>2024-06-03T00:00:00+05:30</updated><id>http://localhost:4000/gsoc2024-Pankaj_Borade/code-w1</id><content type="html" xml:base="http://localhost:4000/gsoc2024-Pankaj_Borade/coding-week1/"><![CDATA[<p>From here onwards Coding period begins, During the Monday meeting, mentors discussed the blocks in VisualCircuit resources and initial tests with GitHub Actions. Additionally, I had some doubts about the VC resources repository, which were clarified by the mentors.</p>

<h2 id="goals">Goals</h2>
<ul class="task-list">
Expand Down
Loading

0 comments on commit 8c4ba55

Please sign in to comment.