سلام
من تازه کار با متلب رو شروع کردم و قصد دارم با استفاده از یکی از توابع متلب که شکل موج خاصی تولید می کنه برنامه ای بنویسم که اون شکل موج تو بازه ی خاصی صفر بشه و بعد دوباره تولید بشه یعنی یه تناوب صفر و یک روی اون تابع ایجاد کنم. ظاهرا با دستور if باید بشه این کارو انجام داد ولی متاسفانه اجرا نمیشه و من نمی تونم ایراد کارمو پیدا کنم. تابع مورد نظر توی تولباکس phase array قرار داره و به این شکل ایجاد میشه:
حالا من می خوام این تابع بعد از 0.1 میلی ثانیه تولید، به مدت 0.1 میلی ثانیه صفر بشه و بعد تکرار بشه. برای صفر کردن تابع برنامه رو اینطور تغییر دادم ولی با اجرای اون کل تابع رو صفر می کنه
من تازه کار با متلب رو شروع کردم و قصد دارم با استفاده از یکی از توابع متلب که شکل موج خاصی تولید می کنه برنامه ای بنویسم که اون شکل موج تو بازه ی خاصی صفر بشه و بعد دوباره تولید بشه یعنی یه تناوب صفر و یک روی اون تابع ایجاد کنم. ظاهرا با دستور if باید بشه این کارو انجام داد ولی متاسفانه اجرا نمیشه و من نمی تونم ایراد کارمو پیدا کنم. تابع مورد نظر توی تولباکس phase array قرار داره و به این شکل ایجاد میشه:
کد:
hw = phased.LinearFMWaveform('SweepBandwidth',1e5,...
'PulseWidth',1e-4);
plot(hw);
حالا من می خوام این تابع بعد از 0.1 میلی ثانیه تولید، به مدت 0.1 میلی ثانیه صفر بشه و بعد تکرار بشه. برای صفر کردن تابع برنامه رو اینطور تغییر دادم ولی با اجرای اون کل تابع رو صفر می کنه
کد:
hw = phased.LinearFMWaveform('SweepBandwidth',1e5,...
'PulseWidth',1e-4);
if 'PulseWidth'>1e-4
hw=0;
end
plot(hw);