<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja"><generator uri="https://jekyllrb.com/" version="4.4.1">Jekyll</generator><link href="https://n-haru0524.github.io/web/feed.xml" rel="self" type="application/atom+xml"/><link href="https://n-haru0524.github.io/web/" rel="alternate" type="text/html" hreflang="ja"/><updated>2026-06-17T14:04:02+00:00</updated><id>https://n-haru0524.github.io/web/feed.xml</id><title type="html">blank</title><subtitle>永井陽斗 / Haruto Nagai — 大阪大学 原田研究室 M2。ロボット・組立順序計画の研究をしています。 </subtitle><entry><title type="html">修論・卒論カウントダウンタイマーを作って GitHub Pages で公開</title><link href="https://n-haru0524.github.io/web/blog/2026/thesis-timer/" rel="alternate" type="text/html" title="修論・卒論カウントダウンタイマーを作って GitHub Pages で公開"/><published>2026-06-17T01:00:00+00:00</published><updated>2026-06-17T01:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2026/thesis-timer</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2026/thesis-timer/"><![CDATA[<p>修論・卒論の提出締切まであと何時間かを表示する、エヴァ風のカウントダウンタイマーを作りました。</p> <p>🔗 公開ページ: <a href="https://n-haru0524.github.io/thesis_timer/">https://n-haru0524.github.io/thesis_timer/</a> 💻 ソースコード: <a href="https://github.com/N-Haru0524/thesis_timer">https://github.com/N-Haru0524/thesis_timer</a></p> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/thesis_timer-480.webp 480w,/web/assets/img/thesis_timer-800.webp 800w,/web/assets/img/thesis_timer-1400.webp 1400w," type="image/webp" sizes="95vw"/> <img src="/web/assets/img/thesis_timer.png" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure> <h2 id="どんなもの">どんなもの</h2> <p>提出締切までの残り時間を、時:分:秒:1/100秒まで表示するタイマーです。 締切が近づくと背景色が <code class="language-plaintext highlighter-rouge">safe → warn → danger</code> と変化して、否が応でも焦らせてくれます。</p> <ul> <li><strong>safe</strong>: 締切まで 7 日（168 時間）以上</li> <li><strong>warn</strong>: 締切まで 7 日以内</li> <li><strong>danger</strong>: 締切まで 3 日（72 時間）以内、または締切超過</li> </ul> <p>修論／卒論の締切を切り替えたり、残り時間表示（REMAIN）と締切の絶対日時表示（ABSOLUTE）を切り替えたりできます。</p> <h2 id="python-アプリから-web-完結へ">Python アプリから Web 完結へ</h2> <p>もともとは Python（pywebview）で動かすデスクトップアプリとして作っていました。 ただ「実行に Python 環境が必要」というのが地味に面倒で、開くたびに準備がいるのが難点でした。</p> <p>そこで、締切までの残り時間と状態（safe/warn/danger）を計算していた Python のロジックを すべて JavaScript に移植し、<strong>ブラウザだけで完結する静的サイト</strong>に作り替えました。 これで URL を開くだけで動くようになり、スマホからでも見られます。</p> <p>締切やしきい値は JavaScript の先頭にまとめてあり、ここを書き換えて <code class="language-plaintext highlighter-rouge">git push</code> するだけで更新できます。</p> <div class="language-js highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="kd">const</span> <span class="nx">DEADLINES</span> <span class="o">=</span> <span class="p">{</span>
  <span class="na">bachelor</span><span class="p">:</span> <span class="dl">"</span><span class="s2">2027-02-10T12:00:00+09:00</span><span class="dl">"</span><span class="p">,</span> <span class="c1">// 卒論</span>
  <span class="na">master</span><span class="p">:</span> <span class="dl">"</span><span class="s2">2027-02-02T15:00:00+09:00</span><span class="dl">"</span><span class="p">,</span> <span class="c1">// 修論</span>
<span class="p">};</span>
<span class="kd">const</span> <span class="nx">WARN_HOURS</span> <span class="o">=</span> <span class="mf">168.0</span><span class="p">;</span> <span class="c1">// 7日: safe → warn</span>
<span class="kd">const</span> <span class="nx">DANGER_HOURS</span> <span class="o">=</span> <span class="mf">72.0</span><span class="p">;</span> <span class="c1">// 3日: warn → danger</span>
</code></pre></div></div> <h2 id="デプロイ">デプロイ</h2> <p>公開は GitHub Pages + GitHub Actions です。 <code class="language-plaintext highlighter-rouge">main</code> ブランチに push すると、ワークフローが自動でサイトを更新してくれます。 サーバーも不要で、運用コストはゼロ。手軽さの面でも Web 完結にしてよかったです。</p> <p>今年こそ締切に追われすぎないよう、このタイマーを横目に進めていきます。</p>]]></content><author><name></name></author><category term="side-project"/><category term="開発"/><summary type="html"><![CDATA[提出締切までの残り時間を表示するエヴァ風タイマーを作り、Python 不要のブラウザ完結アプリとして GitHub Pages で公開しました。]]></summary></entry><entry><title type="html">IREX 2025 国際ロボット展（東京）見学</title><link href="https://n-haru0524.github.io/web/blog/2025/irex/" rel="alternate" type="text/html" title="IREX 2025 国際ロボット展（東京）見学"/><published>2025-12-06T01:00:00+00:00</published><updated>2025-12-06T01:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2025/irex</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2025/irex/"><![CDATA[<p><a href="https://irex.nikkan.co.jp/news/1742">International Robot Exhibition 2025</a>（IREX 2025, @東京ビッグサイト）を見学してきました。 最新の産業ロボット界の動向に触れることができました。</p> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/irex2025-480.webp 480w,/web/assets/img/irex2025-800.webp 800w,/web/assets/img/irex2025-1400.webp 1400w," type="image/webp" sizes="95vw"/> <img src="/web/assets/img/irex2025.jpg" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure>]]></content><author><name></name></author><category term="conferences"/><category term="参加"/><summary type="html"><![CDATA[東京ビッグサイトで開催された International Robot Exhibition 2025 を見学しました。]]></summary></entry><entry><title type="html">IROS 2025（杭州）で発表</title><link href="https://n-haru0524.github.io/web/blog/2025/iros/" rel="alternate" type="text/html" title="IROS 2025（杭州）で発表"/><published>2025-10-20T01:00:00+00:00</published><updated>2025-10-20T01:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2025/iros</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2025/iros/"><![CDATA[<p><a href="https://www.iros25.org/">IEEE/RSJ International Conference on Intelligent Robots and Systems</a>（IROS 2025, @Hangzhou, China）で発表しました。</p> <p>Title: <strong>Assembly Sequence Planning Considering Robotic Motion Costs and Multi-Operation Constraints</strong> Authors: Haruto Nagai, Weiwei Wan, Hiroki Suemoto, Kouichi Masaoka, Kensuke Harada</p> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/iros2025-480.webp 480w,/web/assets/img/iros2025-800.webp 800w,/web/assets/img/iros2025-1400.webp 1400w," type="image/webp" sizes="95vw"/> <img src="/web/assets/img/iros2025.jpeg" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure>]]></content><author><name></name></author><category term="conferences"/><category term="研究発表"/><summary type="html"><![CDATA[IEEE/RSJ IROS 2025（@Hangzhou, China）で論文 "Assembly Sequence Planning Considering Robotic Motion Costs and Multi-Operation Constraints" を発表しました。]]></summary></entry><entry><title type="html">ロボティクス・メカトロニクス講演会2025（山形）で発表</title><link href="https://n-haru0524.github.io/web/blog/2025/robomech/" rel="alternate" type="text/html" title="ロボティクス・メカトロニクス講演会2025（山形）で発表"/><published>2025-06-04T01:00:00+00:00</published><updated>2025-06-04T01:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2025/robomech</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2025/robomech/"><![CDATA[<p><a href="https://robomech.org/2025/">ロボティクス・メカトロニクス講演会2025</a>（@山形）で発表しました。</p> <p>題目：<strong>各部品のワークフロー制約および動作コストを考慮した組立順序計画</strong> 著者：永井陽斗、万偉偉、末元大樹、正岡孝一、原田研介</p> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/robomech2025-480.webp 480w,/web/assets/img/robomech2025-800.webp 800w,/web/assets/img/robomech2025-1400.webp 1400w," type="image/webp" sizes="95vw"/> <img src="/web/assets/img/robomech2025.jpg" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure>]]></content><author><name></name></author><category term="conferences"/><category term="研究発表"/><summary type="html"><![CDATA[ROBOMECH2025（山形）で「各部品のワークフロー制約および動作コストを考慮した組立順序計画」を発表しました。]]></summary></entry><entry><title type="html">卒業式</title><link href="https://n-haru0524.github.io/web/blog/2025/graduation/" rel="alternate" type="text/html" title="卒業式"/><published>2025-03-25T01:00:00+00:00</published><updated>2025-03-25T01:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2025/graduation</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2025/graduation/"><![CDATA[<p>卒業式が行われました。 M2 の先輩方、B4 の同期達と一緒に卒業を祝いました。</p> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/graduation_celebration.JPG" sizes="95vw"/> <img src="/web/assets/img/graduation_celebration.JPG" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure>]]></content><author><name></name></author><category term="milestone"/><category term="研究室"/><summary type="html"><![CDATA[大阪大学の卒業式が行われました。]]></summary></entry><entry><title type="html">卒業論文発表会</title><link href="https://n-haru0524.github.io/web/blog/2025/thesis-defense/" rel="alternate" type="text/html" title="卒業論文発表会"/><published>2025-02-13T01:00:00+00:00</published><updated>2025-02-13T01:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2025/thesis-defense</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2025/thesis-defense/"><![CDATA[<p>卒業論文発表会が行われました。 発表題目は <strong>「各部品のワークフロー制約および動作コストを考慮した組立順序計画」</strong> です。</p> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/graduate_presentation.JPG" sizes="95vw"/> <img src="/web/assets/img/graduate_presentation.JPG" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure>]]></content><author><name></name></author><category term="milestone"/><category term="研究室"/><summary type="html"><![CDATA[卒業論文発表会が行われました。題目「各部品のワークフロー制約および動作コストを考慮した組立順序計画」。]]></summary></entry><entry><title type="html">研究室旅行（広島・瀬戸内）</title><link href="https://n-haru0524.github.io/web/blog/2024/lab-trip/" rel="alternate" type="text/html" title="研究室旅行（広島・瀬戸内）"/><published>2024-09-24T01:00:00+00:00</published><updated>2024-09-24T01:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2024/lab-trip</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2024/lab-trip/"><![CDATA[<p>広島、瀬戸内に研究室旅行に行きました。 旅行により研究室の先輩方・同期達との交流が深まりました。</p> <div class="row mt-3"> <div class="col-sm"> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/trip_photo-480.webp 480w,/web/assets/img/trip_photo-800.webp 800w,/web/assets/img/trip_photo-1400.webp 1400w," type="image/webp" sizes="95vw"/> <img src="/web/assets/img/trip_photo.jpg" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure> </div> <div class="col-sm"> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/trip_stone-480.webp 480w,/web/assets/img/trip_stone-800.webp 800w,/web/assets/img/trip_stone-1400.webp 1400w," type="image/webp" sizes="95vw"/> <img src="/web/assets/img/trip_stone.jpg" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure> </div> </div>]]></content><author><name></name></author><category term="lab-life"/><category term="研究室"/><summary type="html"><![CDATA[広島・瀬戸内へ研究室旅行に行きました。]]></summary></entry><entry><title type="html">B4 院試壮行会（後編）</title><link href="https://n-haru0524.github.io/web/blog/2024/watermelon/" rel="alternate" type="text/html" title="B4 院試壮行会（後編）"/><published>2024-08-10T05:00:00+00:00</published><updated>2024-08-10T05:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2024/watermelon</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2024/watermelon/"><![CDATA[<p>M2 の方から、勉強中の B4 に差し入れのスイカをいただきました。 カメラ越しには伝わらないサイズ感ですが、本当に大きかったです。</p> <div class="row mt-3"> <div class="col-sm"> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/watermelon-480.webp 480w,/web/assets/img/watermelon-800.webp 800w,/web/assets/img/watermelon-1400.webp 1400w," type="image/webp" sizes="95vw"/> <img src="/web/assets/img/watermelon.jpg" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure> </div> <div class="col-sm"> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/watermelon_cutted-480.webp 480w,/web/assets/img/watermelon_cutted-800.webp 800w,/web/assets/img/watermelon_cutted-1400.webp 1400w," type="image/webp" sizes="95vw"/> <img src="/web/assets/img/watermelon_cutted.jpg" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure> </div> </div>]]></content><author><name></name></author><category term="lab-life"/><category term="研究室"/><summary type="html"><![CDATA[M2 の先輩から、まるごとスイカの差し入れをいただきました。]]></summary></entry><entry><title type="html">B4 院試壮行会（前編）</title><link href="https://n-haru0524.github.io/web/blog/2024/pizza/" rel="alternate" type="text/html" title="B4 院試壮行会（前編）"/><published>2024-08-07T10:00:00+00:00</published><updated>2024-08-07T10:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2024/pizza</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2024/pizza/"><![CDATA[<p>M1 の方から、勉強中の B4 に差し入れの PIZZA HUT をいただきました。 L サイズが 8 枚あり、無念の完食失敗…残りは先輩方がおいしく頂かれました。</p> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/pizza-480.webp 480w,/web/assets/img/pizza-800.webp 800w,/web/assets/img/pizza-1400.webp 1400w," type="image/webp" sizes="95vw"/> <img src="/web/assets/img/pizza.jpg" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure>]]></content><author><name></name></author><category term="lab-life"/><category term="研究室"/><summary type="html"><![CDATA[M1 の先輩から PIZZA HUT の差し入れをいただきました。]]></summary></entry><entry><title type="html">原田研究室 集合写真</title><link href="https://n-haru0524.github.io/web/blog/2024/lab-photo/" rel="alternate" type="text/html" title="原田研究室 集合写真"/><published>2024-07-28T03:00:00+00:00</published><updated>2024-07-28T03:00:00+00:00</updated><id>https://n-haru0524.github.io/web/blog/2024/lab-photo</id><content type="html" xml:base="https://n-haru0524.github.io/web/blog/2024/lab-photo/"><![CDATA[<p>2024年度 原田研究室メンバーでの集合写真撮影がありました。 この日の気温は非常に高く、過酷な状況のなか皆さんお疲れさまでした。</p> <figure> <picture> <source class="responsive-img-srcset" srcset="/web/assets/img/members.PNG" sizes="95vw"/> <img src="/web/assets/img/members.PNG" class="img-fluid rounded z-depth-1" width="100%" height="auto" loading="eager" onerror="this.onerror=null; $('.responsive-img-srcset').remove();"/> </picture> </figure>]]></content><author><name></name></author><category term="lab-life"/><category term="研究室"/><summary type="html"><![CDATA[2024年度の原田研究室メンバーで集合写真を撮影しました。]]></summary></entry></feed>