主要内容

搜索


Just in one week, 200 amazing images were created in the Mini Hack contest and 20,000 solutions were submitted in the Cody contest. What an amazing week! Time to announce the winners.
MATLAB Mini Hack Winners - Week 1
Your awesome work made our judging VERY HARD! We came up with several categories for winning entries. Congratulations to the winners! Each of you won a MathWorks T-shirt:
Cody 10th Anniversary Winners - Week 1
  • The top 3 players for solving most problems in week 1 are Mohammed, Stefan Abendroth, and Hans Bourgeois. Congratulations! Each of you won an Amazon gift card.
  • You don’t need to be an expert or spend tons of time to win! As long as you participate, you have the opportunity to win MathWorks T-shirts. Week 1 lucky winners are Meredith Reid and KARUPPASAMYPANDIYAN M.
In Week 2, we’ve added more fun to the contests!
MATLAB Mini Hack 2022:
  • Voting started. Cast your votes on your favorite images. Help us show the world the beauty of mathematics by sharing your work with your friends, classmates, or colleagues.
  • Toolboxes unlocked. You are able to leverage the Image Processing Toolbox to generate even more interesting images. We will award the best entries leveraging the Image Processing Toolbox.
Cody 10th Anniversary:
The contest development team has identified an issue when trying to link your new entries to submissions in the File Exchange. The issue has prevented some users from successfully linking their entries. We have a fix and will be deploying it today at 3pm EST.
Two fun community contests: MATLAB Mini Hack 2022 and Cody 10th Anniversary start today on Oct. 3rd!
Participants across all skill levels are welcome to join! Even if you have limited time, you still have opportunities to win as long as you participate.
Want to challenge yourself and win Amazon gift Cards and limited-edition Badges?
1. MATLAB Mini Hack 2022: Create your best entry (either a new or a remixed entry).
2. Cody 10th Anniversary: Solve your 1st Cody problem today!
If you have any questions about the contest rules or prizes, let us know by replying to this thread.
We hope you enjoy the contests, improve your MATLAB skills, and win prizes! Now, let the party begin!
Hi Fellow Users,
I am Muthuserpi From A begginer of Optics studio Please anyone help me how to add two diffeaction reflective grating and How to tilt and decenter in matlab simulation
Thanks And Regards
S.Muthuserpi
Hello Community,
For E vehicle application to control the speed and torque of PMSM motor I am implementing FOC algorithm. We know that to arrive at Speed set point we have speed control loop which is outer loop, Further PI CONTROLLER of speed loop will give reference for Iq current which regulates the current using current loop. My question is 1.How to arrive at Torque set point?
2. Is speed control using FOC is enough or we should implement Torque control algorithm also?
3. should we have speed mode and Torque mode selection in case of constant speed requirement during cruise mode and high torque requirement during uphill situation respectively
4. To arrive at Torque set point what is the relation or transfer function to tune PI controller for Torque loop?
Please give your valuable inputs and answers, thanks in advance
Two fun community contests: MATLAB Mini Hack 2022 and Cody 10th Anniversary will start on Oct 3rd, 2022. Are you ready for the challenges and big prizes?
How to Play
1. MATLAB Mini Hack 2022 contest:
Use up to 280 characters of MATLAB code to generate an interesting image. New in 2022 contest: You'll be allowed to use functions from File Exchange entries and/or certain MathWorks toolboxes in different weeks.
2. Cody 10th Anniversary contest:
Solve at least 1 Cody problem per day during the 4-week contest period. We will reward participants with the longest streak of days of problem-solving!
Tips to Win
1. MATLAB Mini Hack 2022: Spend time creating your best work (either a new or remixed entry).
2. Cody 10th Anniversary: Make sure you start on the 1st day (Oct 3rd). This is the key if you want to win one of the grand prizes (worth marking your calendar?)
3. Act now: No matter if you want to join either the Mini Hack, Cody, or both. Start planning your strategy today.
Good luck! We hope you are the winner.
Hello Academia,
I've been trying to get information regarding these configuraitons in a 3 phase transformer. The first is a dual secondary consisting of a wye output and delta output. Both feed separate 3 phase bridges, which outputs are connected in parallel.
The second is a Wye output, which each leg feeds 3 more series windings, which are located on the adjacent core (phase shifted) on the same transformer, with only one 3 phase bridge for the output
I see there is a zigzag simulink but can't seem to get that loaded...
My question is, are these essentially identical in operation, or is the dual secondary what I should be using? (due to better harmonic rejection)
Thanks,
Bryan
Hello,
I am designing a battery model and its control to undergo cyclic charge and discharge.
The battery model is created by using a simscape electrical battery block (Table-based).
The control is modeled using Stateflow. The statflow chart takes SOC values as inputs and provide current values as outputs. By default, the battery will be at rest and no current is drawn at that state (I=0A). And then based on the SOC % of the battery, it goes to charge (3A current) or discharge (-3A current) state. I have defined the controls as follows.
  • If the battery has SOC >= 50%, it has to discharge. If the battery has SOC < 50%, it has to charge.
  • While discharging, if the battery reaches 0% SOC, it goes to rest.
  • While charging, if the battery reaches 100% SOC, it goes to rest.
I have defined initial SOC as 50%.
When I run the simulation, the battery started to discharge as per the condition provided in the stateflow chart.
I = -3
But the battery has not come to rest state after reaching 0% S0C.
I am getting a warning that,
At time 1944.017100, one or more assertions are triggered. State of charge must be greater than or equal to zero. The assertion comes from: Block path: Example_cell_model/Battery (Table-Based)1Assert location: o (location information is protected)
I don't understand why the battery has not came back to rest state.
Do anyone has any idea for the cause of this problem and how to resolve it?
Thanks in advance.
I need to model temperature rise of a resistor due to joule heating with a variable supply or a variable resistor. Is there a simulink component that can be used for this or it has to be implemented with the physical equations fed into block diagrams?
Can someone help give an idea of how this can be modeled?
I'm trying to simulate EV drive system using FEM PMSM and IGBT block of simscape electrical.
The simulation results (magnitude of the current in time domain) is quite similar with the experimental results.
But in frequency domain analysis using FFT (fast fourier transform), amplitude of current harmonics(specially 5, 7 th of fundamental frequency) are way to different.
Is there any way that I could increase my simulation accuracy?
I am trying to simulate a single phase H-bridge inverter connected to a load in Simulink using Simscape Electrical (blue wire). The simulation does not work. I tested the same circuit (with black wire). And everything works fine. I looked hard, I can't see any reason. Does anyone know why or have any examples?
You can find the simulation files in the attachment.
My goal with this is to start with a basic inverter scheme before testing multilevel converters. I had started with that but I had problems from the beginning...
Thanks in advance

hello can some body help me regarding designing a project in simulink to estimate the state of health of a battery ?... including kalman filter .... at least i need the battery cell equivalent circuit in simulink and the idea of the estimation method

many thanks

I am trying to simulate a 3 phase induction motor on Simulink by using its dynamic model. This is the information in its datasheet:
It also has 4 poles and J = 0.0117 kgm², star connection. After calculate parameters, I get these values:
Lm = 0.176 H; Rr=Rs = 0.613Ω; Llr=Lls = 0.00669 H.
Also in the datasheet, they said that the output torque = 705 Nm at speed 35 rpm, but the model cannot reach that value. The simulation motor run backward if applied torque greater than 70 Nm ( at about 1200 rpm). But in reality, this motor can withstand 705 Nm, I have seen it run.
Can someone help me with this problem? Thank you
Hi,
I have two DGs and I want a secondary control between these two DGs using mpc toolbox. I don't know where I am going wrong with it. it is not working. when I am trying to change the load the frequency is still the same. Can anyone please help?
Thanks
Hullo Everyone. I have published a video on the MathWorks YouTube channel that explains active, reactive and apparent power. It is less than 9 minutes and so can be viewed over a coffee break. Here's the link https://www.youtube.com/watch?v=DCUwK6AfzcM
Hi,
I am using matlab fuction block to calculate duty ratio for a MOSFET . How do I incorporate time delay in the calculated duty cycle. Duty cycle of S3 should be delayed by d1 in the picture.Kindly help

I have a datasheet of an induction motor (as figure below). I want to simulate it on matlab/simulink, but I don't know it's parameters (Lls, Llr, Lm, Rr, Rs).

I tried to search about open circuit test and blocked rotor test to determine these parameters, but some of information doesn't appear on datasheet and I don't have the real motor to test on it (datasheet is only think I have).

Could someone help me with this?

Assignments, quizzes, midterms, finals, grades, joys of success, the anxiety of low grades. Sounds like a typical cycle that students go through, right? Sometimes, all that hustle and bustle makes students forget that coding could be fun! Dr. Amin Rahman teaches AMATH 301 at the University of Washington. Many engineering students take this course and learn MATLAB in the course. He was looking for ways to keep students engaged and remind them that coding is fun. To achieve this goal Dr. Rahman and I set up a small competition in MATLAB Grader. Dr. Rahman selected several problems from MATLAB Grader problem collections. Students competed in this optional competition without the pressure of grades. They submitted their solutions; their submissions were automatically graded using MATLAB Grader and they got instant feedback. Green checkmarks for the correct answers empowered students and gamified coding. With the feedback they got, they continuously improved their code.

Prizes? Aside from the joys of coding in MATLAB, students won MathWorks-branded items like t-shirts, hats, and bags and proudly wore them as you can see in Dr. Rahman’s tweet.

Interested in using MATLAB Grader? Interested in accessing MATLAB Grader problem collections? Like to brainstorm ideas to make coding more fun? Reach out to us! We are here to help. Any creative ideas to make courses more engaging? Please share your ideas with this community!

Introduction
Comma-separated lists are really very simple. You use them all the time. Here is one:
a,b,c,d
That is a comma-separated list containing four variables, the variables a, b, c, and d. Every time you write a list separated by commas then you are writing a comma-separated list. Most commonly you would write a comma-separated list as inputs when calling a function:
fun(a,b,c,d)
or as arguments to the concatenation operator or cell construction operator:
[a,b,c,d]
{a,b,c,d}
or as function outputs:
[a,b,c,d] = fun();
It is very important to understand that in general a comma-separated list is NOT one variable (but it could be). However, sometimes it is useful to create a comma-separated list from one variable (or define one variable from a comma-separated list), and MATLAB has several ways of doing this from various container array types:
1) from a field of a structure array using dot-indexing:
struct_array.field % all elements
struct_array(idx).field % selected elements
2) from a cell array using curly-braces:
cell_array{:} % all elements
cell_array{idx} % selected elements
3) from a string array using curly-braces:
string_array{:} % all elements
string_array{idx} % selected elements
Note that in all cases, the comma-separated list consists of the content of the container array, not subsets (or "slices") of the container array itself (use parentheses to "slice" any array). In other words, they will be equivalent to writing this comma-separated list of the container array content:
content1, content2, content3, .. , contentN
and will return as many content arrays as the original container array has elements (or that you select using indexing, in the requested order). A comma-separated list of one element is just one array, but in general there can be any number of separate arrays in the comma-separated list (zero, one, two, three, four, or more). Here is an example showing that a comma-separated list generated from the content of a cell array is the same as a comma-separated list written explicitly:
>> C = {1,0,Inf};
>> C{:}
ans =
1
ans =
0
ans =
Inf
>> 1,0,Inf
ans =
1
ans =
0
ans =
Inf
How to Use Comma-Separated Lists
Function Inputs: Remember that every time you call a function with multiple input arguments you are using a comma-separated list:
fun(a,b,c,d)
and this is exactly why they are useful: because you can specify the arguments for a function or operator without knowing anything about the arguments (even how many there are). Using the example cell array from above:
>> vertcat(C{:})
ans =
1
0
Inf
which, as we should know by now, is exactly equivalent to writing the same comma-separated list directly into the function call:
>> vertcat(1,0,Inf)
ans =
1
0
Inf
How can we use this? Commonly these are used to generate vectors of values from a structure or cell array, e.g. to concatenate the filenames which are in the output structure of dir:
S = dir(..);
F = {S.name}
which is simply equivalent to
F = {S(1).name, S(2).name, S(3).name, .. , S(end).name}
Or, consider a function with multiple optional input arguments:
opt = {'HeaderLines',2, 'Delimiter',',', 'CollectOutputs',true);
fid = fopen(..);
C = textscan(fid,'%f%f',opt{:});
fclose(fid);
Note how we can pass the optional arguments as a comma-separated list. Remember how a comma-separated list is equivalent to writing var1,var2,var3,..., then the above example is really just this:
C = textscan(fid,'%f%f', 'HeaderLines',2, 'Delimiter',',', 'CollectOutputs',true)
with the added advantage that we can specify all of the optional arguments elsewhere and handle them as one cell array (e.g. as a function input, or at the top of the file). Or we could select which options we want simply by using indexing on that cell array. Note that varargin and varargout can also be useful here.
Function Outputs: In much the same way that the input arguments can be specified, so can an arbitrary number of output arguments. This is commonly used for functions which return a variable number of output arguments, specifically ind2sub and gradient and ndgrid. For example we can easily get all outputs of ndgrid, for any number of inputs (in this example three inputs and three outputs, determined by the number of elements in the cell array):
C = {1:3,4:7,8:9};
[C{:}] = ndgrid(C{:});
which is thus equivalent to:
[C{1},C{2},C{3}] = ndgrid(C{1},C{2},C{3});
Further Topics:
MATLAB documentation:
Click on these links to jump to relevant comments below:
Dynamic Indexing (indexing into arrays with arbitrary numbers of dimensions)
Nested Structures (why you get an error trying to index into a comma-separated list)
Summary
Just remember that in general a comma-separated list is not one variable (although they can be), and that they are exactly what they say: a list (of arrays) separated with commas. You use them all the time without even realizing it, every time you write this:
fun(a,b,c,d)

If you are interested in live script lecture notes in the following areas, take a look at the short course ( Advanced MATLAB for Scientific Computing ) developed at Stanford. You can also download the required data for the examples from the course GitHub page.

  • MATLAB Fundamentals
  • Graphics and Data Visualization
  • Efficient Code Writing
  • System and File Manipulation
  • Big Data Handling
  • Numerical Linear Algebra
  • Numerical Optimization
  • Symbolic Toolbox, ODE, and PDE
  • Statistical and Machine Learning
  • Deep Learning
  • Object-Oriented Programming
  • Using MATLAB with Other Programming Languages
  • Image Processing, Computer Vision, and Image Acquisition
  • Signal Processing, Audio, and DSP System