element14 Community
element14 Community
    Register Log In
  • Site
  • Search
  • Log In Register
  • About Us
  • Community Hub
    Community Hub
    • What's New on element14
    • Feedback and Support
    • Benefits of Membership
    • Personal Blogs
    • Members Area
    • Achievement Levels
  • Learn
    Learn
    • Ask an Expert
    • eBooks
    • element14 presents
    • Learning Center
    • Tech Spotlight
    • STEM Academy
    • Webinars, Training and Events
    • Learning Groups
  • Technologies
    Technologies
    • 3D Printing
    • FPGA
    • Industrial Automation
    • Internet of Things
    • Power & Energy
    • Sensors
    • Technology Groups
  • Challenges & Projects
    Challenges & Projects
    • Design Challenges
    • element14 presents Projects
    • Project14
    • Arduino Projects
    • Raspberry Pi Projects
    • Project Groups
  • Products
    Products
    • Arduino
    • Avnet Boards Community
    • Dev Tools
    • Manufacturers
    • Multicomp Pro
    • Product Groups
    • Raspberry Pi
    • RoadTests & Reviews
  • Store
    Store
    • Visit Your Store
    • Choose another store...
      • Europe
      •  Austria (German)
      •  Belgium (Dutch, French)
      •  Bulgaria (Bulgarian)
      •  Czech Republic (Czech)
      •  Denmark (Danish)
      •  Estonia (Estonian)
      •  Finland (Finnish)
      •  France (French)
      •  Germany (German)
      •  Hungary (Hungarian)
      •  Ireland
      •  Israel
      •  Italy (Italian)
      •  Latvia (Latvian)
      •  
      •  Lithuania (Lithuanian)
      •  Netherlands (Dutch)
      •  Norway (Norwegian)
      •  Poland (Polish)
      •  Portugal (Portuguese)
      •  Romania (Romanian)
      •  Russia (Russian)
      •  Slovakia (Slovak)
      •  Slovenia (Slovenian)
      •  Spain (Spanish)
      •  Sweden (Swedish)
      •  Switzerland(German, French)
      •  Turkey (Turkish)
      •  United Kingdom
      • Asia Pacific
      •  Australia
      •  China
      •  Hong Kong
      •  India
      •  Korea (Korean)
      •  Malaysia
      •  New Zealand
      •  Philippines
      •  Singapore
      •  Taiwan
      •  Thailand (Thai)
      • Americas
      •  Brazil (Portuguese)
      •  Canada
      •  Mexico (Spanish)
      •  United States
      Can't find the country/region you're looking for? Visit our export site or find a local distributor.
  • Translate
  • Profile
  • Settings
Path to Programmable 3
  • Challenges & Projects
  • Design Challenges
  • Path to Programmable 3
  • More
  • Cancel
Path to Programmable 3
Blog Project Description And Upgrade Installation
  • Blog
  • Forum
  • Documents
  • Leaderboard
  • Files
  • Members
  • Mentions
  • Sub-Groups
  • Tags
  • More
  • Cancel
  • New
Join Path to Programmable 3 to participate - click to join for free!
  • Share
  • More
  • Cancel
Group Actions
  • Group RSS
  • More
  • Cancel
Engagement
  • Author Author: guillengap
  • Date Created: 29 May 2023 2:20 AM Date Created
  • Views 1936 views
  • Likes 9 likes
  • Comments 4 comments
  • design challenge
  • path to programmable
  • xilinx
  • vivado
  • Ultra96-V2 Board
  • design competition
  • vitis
  • programmable
  • minized
Related
Recommended

Project Description And Upgrade Installation

guillengap
guillengap
29 May 2023
Project Description And Upgrade Installation

Blog # 1 - Project Description And Upgrade Installation
Blog # 2 - MiniZed Board Peripheral Configuration and Creating a Boot Image
Blog # 3 - Executing Vivado Design Suite TCL Commands
Blog # 4 - Move Data Between BRAM and DDR3 Memories
Blog # 5 - How to Enable Interrupts With MiniZed

**********************************************************************************************************************

Hi everyone! My main goal in this challenge is to learn and improve my skills with Vivado and Vitis mainly. I already know something about Vivado, and now I'm migrating to programming with Vitis. I also know how to program in C so I hope to quickly learn about the Vitis platform. Below I show you a brief description of my project, as well as the solution I faced in the software upgrade from Vivado HL Design Edition to Vitis Unified Software Platform.

Building A Balance For Tuning Of Drone Motors

  • A PID controller is a control loop feedback mechanism commonly used in industrial control systems. A PID controller continuously calculates an error value e(t) as the difference between a desired setpoint and a measured process variable and applies a correction based on proportional, integral, and derivative terms which give their name to the controller type.
  • In my project I will use this mechanism to control two motor in order to calibrate our drone. We will put the motors on a balance and calculate the angle using the Pmod NAV or similar module. Even the accelerometer of the MiniZed board itself would be ideal. So in our case the value that we will control is the inclination angle of our drone. The e(t) error will be the difference between the real angle of the drone and the desired one. The desired one will be 0, which means that the drone is perfectly horizontal.
  • So to tune our motors we will first build a balance for just 2 motors. This two motors represent just one axis, in this case will be the x-axis. As you know a drone can move in any of the three axis, x,y and z. All we want to do with this balance is to find our P, I and D constants. Each of this 3 constants will affect in one way or other the entire PID control, and we have to find the best ones. I will make any kind of changes and improvements to my project that I have not mentioned here, and it all depends on the progress that I have, and that I solve the main problems.

Why adjustment or calibration of drone motors is necessary? As we know, all electromechanical parts wear and change their technical specifications, so any damage or wear is enough to decalibrate these devices.

Below I show you the MiniZed gift board. Thanks to the sponsor of the "Path to Programmable III" challenge!

image

I already have the Ultra96-v2 board, so my collection of quality boards increases.

image

HARDWARE 

  • MiniZed, and
  • Pmod Nav or similar accelerometer
  • 2 x DC motor
  • 2 x drone propeller
  • L298N driver or similar

SOFTWARE:

  • AMD Vivado Design Suit,
  • Vitis, and
  • PetaLinux

Can't Launch Vitis IDE

During the training course and after synthesizing, implementing, and generating a bitstream for a Microblaze design in Vivado, I got an error when I tried to start the Vitis IDE. The command sequence is Tools -> Launch Vitis IDE, and all I got was a popup with a message "Vitis IDE launch failed" [OK]. No further information is provided. I was running Windows 10, with Vivado 2021.1 as the tutorial recommends.

image

I tried with Vitis HLS 2021.1 is installed and can be launched from a command prompt, but nothing there matches anything like the software Vitis IDE examples I've found online. Everything in Vitis HLS seems to be for synthesizing C code into RTL, rather than writing and compiling C code to execute on a Microblaze processor. 

image

In my Microblaze Vivado project I get all the way through generating the bitstream and exporting the hardware, including the bitstream, and generating the .XSA file.

Solution

Is there a way to launch the the Vitis IDE (not Vitis HLS) other than from Vivado? The error is solved by upgrading the installation from "Vivado HL Design Edition" to "Vitis Unified Software Platform".

image

By default the window selects everything and indicates the installation of 27 GB approx. In my case I unchecked "Devices" and the installation was reduced to 11 GB with a time of approximately two hours. In summary, it's possible to save time and the update doesn't delete the data of devices if you already have them installed.

image

To start this update process you just click on Help -> Add Design Tools or Devices

image

And type your credentials in the next window

image

This problem is common in new users of Vivado and Vitis, because they install everything by default or because they don't receive recommendations for different installation options. The solution is simple and I hope this can be useful for someone in trouble!

  • Sign in to reply
  • guillengap
    guillengap over 2 years ago in reply to rscasny

    Thanks for the comment, this was a personal experience in which I needed to update my version!... I already published my final project here if someone wants to see it:

     Building A Balance For Tuning Of Drone Motors With MiniZed - Final 

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • rscasny
    rscasny over 2 years ago

    Informative blog. Thanks.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • guillengap
    guillengap over 2 years ago in reply to taifur

    Drone clubs are popular all over the world!.

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
  • taifur
    taifur over 2 years ago

    I love drone

    • Cancel
    • Vote Up 0 Vote Down
    • Sign in to reply
    • More
    • Cancel
element14 Community

element14 is the first online community specifically for engineers. Connect with your peers and get expert answers to your questions.

  • Members
  • Learn
  • Technologies
  • Challenges & Projects
  • Products
  • Store
  • About Us
  • Feedback & Support
  • FAQs
  • Terms of Use
  • Privacy Policy
  • Legal and Copyright Notices
  • Sitemap
  • Cookies

An Avnet Company © 2025 Premier Farnell Limited. All Rights Reserved.

Premier Farnell Ltd, registered in England and Wales (no 00876412), registered office: Farnell House, Forge Lane, Leeds LS12 2NE.

ICP 备案号 10220084.

Follow element14

  • X
  • Facebook
  • linkedin
  • YouTube