<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Drone | Zilin Chen's Homepage</title><link>https://zilin-chen-22.github.io/zilinchen.github.io/tag/drone/</link><atom:link href="https://zilin-chen-22.github.io/zilinchen.github.io/tag/drone/index.xml" rel="self" type="application/rss+xml"/><description>Drone</description><generator>Hugo Blox Builder (https://hugoblox.com)</generator><language>en-us</language><lastBuildDate>Tue, 04 Mar 2025 00:00:00 +0000</lastBuildDate><image><url>https://zilin-chen-22.github.io/zilinchen.github.io/media/icon_hu7729264130191091259.png</url><title>Drone</title><link>https://zilin-chen-22.github.io/zilinchen.github.io/tag/drone/</link></image><item><title>Ultra-Lightweight DEA Drone Flight Controller Development</title><link>https://zilin-chen-22.github.io/zilinchen.github.io/blog/dea_drone/</link><pubDate>Tue, 04 Mar 2025 00:00:00 +0000</pubDate><guid>https://zilin-chen-22.github.io/zilinchen.github.io/blog/dea_drone/</guid><description>&lt;p>Since March 2025, I have been collaborating with Professor &lt;strong>Huichan Zhao&lt;/strong> to develop an innovative flight control system for an ultra-lightweight drone utilizing soft artificial muscles. The drone weighs only 23 grams and employs Dielectric Elastomer Actuators (DEA) as its primary propulsion mechanism.&lt;/p>
&lt;h2 id="project-overview">Project Overview&lt;/h2>
&lt;p>This research focuses on overcoming the unique challenges of controlling drones powered by soft artificial muscles. Unlike traditional motor-based systems, DEA actuators offer silent operation, high energy efficiency, and biomimetic movement patterns, but require specialized control approaches due to their nonlinear electromechanical properties.&lt;/p>
&lt;h3 id="flight-controller-development">Flight Controller Development&lt;/h3>
&lt;p>I am designing a custom flight controller architecture specifically optimized for DEA-driven drones:&lt;/p>
&lt;ul>
&lt;li>Implemented real-time control algorithms accounting for DEA hysteresis and viscoelastic behavior&lt;/li>
&lt;li>Developed adaptive PID controllers with gain scheduling for voltage-to-strain conversion&lt;/li>
&lt;li>Integrated sensor fusion for IMU data processing with Kalman filtering&lt;/li>
&lt;/ul>
&lt;h3 id="simulator-implementation">Simulator Implementation&lt;/h3>
&lt;p>To enable safe testing and rapid prototyping, I built a physics-based simulator featuring:&lt;/p>
&lt;ul>
&lt;li>High-fidelity DEA actuator models with electromechanical coupling dynamics&lt;/li>
&lt;li>Aerodynamic modeling for ultra-lightweight frames&lt;/li>
&lt;li>Real-time visualization of drone state and actuator deformation&lt;/li>
&lt;/ul>
&lt;h2 id="technical-challenges">Technical Challenges&lt;/h2>
&lt;p>The project addresses several key research challenges:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>Nonlinear Control&lt;/strong>: Compensating for DEA&amp;rsquo;s voltage-dependent strain response and creep effects&lt;/li>
&lt;li>&lt;strong>Weight Constraints&lt;/strong>: Implementing full control stack within 23g total system mass&lt;/li>
&lt;/ol>
&lt;h2 id="current-progress">Current Progress&lt;/h2>
&lt;p>As of today, we have achieved:&lt;/p>
&lt;ul>
&lt;li>Successful closed-loop attitude control in simulation with &amp;lt;5° steady-state error&lt;/li>
&lt;li>Preliminary flight tests in mujoco simulation, demonstrating basic stabilization capabilities&lt;/li>
&lt;/ul>
&lt;div style="text-align: center;">
&lt;img src="noise_control.png" alt="simulation image" style="width: 40%;">
&lt;img src="stable.png" alt="simulation image" style="width: 40%;">
&lt;/div>
&lt;p>[Project repository link to be added upon publication]&lt;/p></description></item><item><title>UTAT-ADR Autonomous Drone Racing Research</title><link>https://zilin-chen-22.github.io/zilinchen.github.io/blog/fsc/</link><pubDate>Fri, 20 Sep 2024 00:00:00 +0000</pubDate><guid>https://zilin-chen-22.github.io/zilinchen.github.io/blog/fsc/</guid><description>&lt;p>From September till December, 2024, I joint a team in UTIAS, University of Toronto, which mainly focus on Autonomous Drone Racing.&lt;/p>
&lt;p>Under professor Hugh H. T. Liu&amp;rsquo;s guidance, I mainly focus on building a simulator for the drone, also planned the yaw angle.&lt;/p>
&lt;h2 id="research-overview">Research Overview&lt;/h2>
&lt;p>Human pilots can use their own talent to controll drones to fly rapidly through gates, and the goal of the whole team is to use computer-based autonomous pilot to guide the drone.&lt;/p>
&lt;h2 id="my-contribution">My Contribution&lt;/h2>
&lt;h3 id="building-a-simulation-system">Building a simulation system&lt;/h3>
&lt;p>The team previously used Betaflight to be its flight controller. However, to make full use of AI, we need to simulate how the drone behaves. So, developing a simulator according to Betaflight&amp;rsquo;s original code is very important.&lt;/p>
&lt;p>I read all the lines from Betaflight, and extracted the controller code and test it. Also, I tested the input signal and output RPM curve.&lt;/p>
&lt;p>This task is not a hard one, but it took me a lot of time to get to know how Betaflight work. As an open-source code, it&amp;rsquo;s super long and hard to read.&lt;/p>
&lt;p>The following is the code structure of Betaflight that I organized：
&lt;figure >
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img alt="Structure of Betaflight" srcset="
/zilinchen.github.io/blog/fsc/controller_structure_hu7059809425375089324.webp 400w,
/zilinchen.github.io/blog/fsc/controller_structure_hu12091372878740306727.webp 760w,
/zilinchen.github.io/blog/fsc/controller_structure_hu6423071772227521308.webp 1200w"
src="https://zilin-chen-22.github.io/zilinchen.github.io/zilinchen.github.io/blog/fsc/controller_structure_hu7059809425375089324.webp"
width="738"
height="760"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>This one is a demo of the part I contributed for the simulator:
&lt;figure >
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img alt="controller demo" srcset="
/zilinchen.github.io/blog/fsc/sim_hu8507087693354633461.webp 400w,
/zilinchen.github.io/blog/fsc/sim_hu12803366713941661070.webp 760w,
/zilinchen.github.io/blog/fsc/sim_hu13239621856469927107.webp 1200w"
src="https://zilin-chen-22.github.io/zilinchen.github.io/zilinchen.github.io/blog/fsc/sim_hu8507087693354633461.webp"
width="760"
height="479"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;h3 id="yaw-planning">Yaw planning&lt;/h3>
&lt;p>The racing drone we built is using computer vision to guide and locate itself. The drone need to look at the &amp;ldquo;gate&amp;rdquo; to get to know where it is.&lt;/p>
&lt;p>My work is to help the drone get better vision to have a more accurate position.&lt;/p>
&lt;p>The following is a demo of the yaw-planning. The red arrow is the yaw angle of a world-champion level human-pilot, while the blue arrow is the planned one. The black line is the gate.
&lt;figure >
&lt;div class="flex justify-center ">
&lt;div class="w-100" >&lt;img alt="Yaw planning demo" srcset="
/zilinchen.github.io/blog/fsc/yaw_planning_hu4145312099636648761.webp 400w,
/zilinchen.github.io/blog/fsc/yaw_planning_hu1689267154093082803.webp 760w,
/zilinchen.github.io/blog/fsc/yaw_planning_hu14112844666145059473.webp 1200w"
src="https://zilin-chen-22.github.io/zilinchen.github.io/zilinchen.github.io/blog/fsc/yaw_planning_hu4145312099636648761.webp"
width="760"
height="429"
loading="lazy" data-zoomable />&lt;/div>
&lt;/div>&lt;/figure>
&lt;/p>
&lt;p>&lt;a href="https://github.com/Zilin-Chen-22/Yaw_Planning" target="_blank" rel="noopener">Click here&lt;/a> to see the orinigal code.&lt;/p></description></item></channel></rss>