نوشته های من تنها

:)
نوشته های من تنها

بببببب ببببببیببببببببببببببب
یکی میگفت که آدما تو سکوت بین کلمه هاشون با هم حرف میزنن

بایگانی
آخرین مطالب
پیوندهای روزانه

۷۳ مطلب با موضوع «مهندسی طور» ثبت شده است

Lagrange Point

چهارشنبه, ۱۴ فروردين ۱۳۹۸، ۰۴:۲۹ ق.ظ

 

 

سلام

 

نمیدونستم چرا سیاره مشتری این دوتا مجموعه سیارک رو دور و برش داره که باهاش همراهند و تو مدارشند. یعنی فکر میکردم که بخاطر جاذبه اش منحرف شدن بقیه سیارک ها و جاذبه اش رو اون دوتا گروه زیاد نرسیده. ولی خب استدلال چرتیه چون نقاط دور تری هستن که توش خبری نیست.

ولی دیشب داشتم میدیدم تو یه ویدئو گویا اون جا دو تا نقطه لاگرانژ پایدار هست. یعنی مجموع گرانش خورشید و مشتری و حرکتشون باعث میشه چیزایی که تو اون نقاط هستن بمونن همونجا. 

 

 

گویا L1,L2,L3 خیلی زیاد پایدار نیستن ولی L4,L5 پایدارن

  • مهدی

مهاجرت به VHDL قسمت دوم البته ناقص

سه شنبه, ۶ فروردين ۱۳۹۸، ۱۱:۳۵ ب.ظ

 

سلام 

**

اوکی یه یه ماهی هست که میخوام این پست رو کاملش کنم نمیشه. دیگه همینجوری ناقص میزارمش

**

 

http://www.klabs.org/mapld05/presento/189_lewis_p.pdf

تو این پست میخوام یکی از قابلیتای جالب VHDL رو براتون بگم که تو سیگنال پروسسینگ خیلی کار رو ساده میکنه.

برای شروع، اگه میخواستیم که عدد اعشاری رو به صورت فیکسد پوینت بنویسیم تو باینری اینجوری میشد دیگه:

(12.375)_10=(110.011)_2

درسته؟

یعنی اعداد سمت راست ممیز 0.5 و 0.25 و 0.125 و ... میشن

حالا دو تا عدد رو میخوایم دو هم ضرب کنیم، میشه خیلی ساده مثل دو تا وکتور باینری باهاشون برخورد کرد و مثلا اگه جفتشون 3 تا ممیز دارن، برای این که نتیجه هم سه تا ممیز داشته باشه، وکتور نهایی که 6 تا ممیز داره رو 3 تاش رو ترانکیت میکنیم که خروجی عدد با مفهومی بشه.

ولی خب همه ی این کارا و بررسی این که این وسط overflow شده و این که حواسمون به ممیز ها باشه، خیلی کار اذیت کننده ایه. چیز نشدنی ای نیست ولی آزار دهندس.

مثال:

12.5x23.7 = 1100.100 x 10111.101

اول این که با سه تا ممیز نمیشه 23.7 رو نشون داد و نتیجه دقیق نیستش. 

برای این که این ضرب رو بتونیم بکنیم میایم عددا رو تو 2^3 ضرب میکنیم، که ممیزشون بپره

= 1100100 x 10111101 = 100 1001 1101 0100

بعدش میایم 3 تا بیت رو از سمت راست حذف میکنیم چون محاسباتمون fixed point هست و باید تعداد ممیز ها ثابت باشه

= 1001 0011 1010

که چون میدونیم 3 تا ممیز داریم عدد واقعی هست :

= 1 0010 0111.010 = 295.25

عدد درست 296.25 هست. حالا چون تعداد ممیز ها کم بود یکم دقت پایین بود ولی بالاخره تو FPGA چیزی که خدا زیاد گذاشته بیته. 

 

حالا یه شخصی به اسم آقای David Bishop اومدش یه لایبرری برای VHDL درست کرد که توش این کارای ضرب و جمع و ترانکیت کردن و ریسایز کردن و تبدیل فیکس به فلوت و ... رو قرار دادش.

من راجع به fixed point ها مینویسم. float قطعا دقت بیشتر داره و بهتره ولی خب سنتزش فکر میکنم خیلی سنگین میشه. شایدم نمیشه. نمیدونم.

 

این لایبرری اسمش fixed_pkg هست. 

توی مدل سیم میشه راحت سیمولیت کرد ولی تو کوآرتس سر سنتز گیر میده که نمیشناسه. چون که آقایون توی ورژن prime 15+ فقط گذاشتنش. ولی شما میتونید دستی ادش کنید از همین گیتهاب آقای بیشاپ https://github.com/FPHDL/fphdl

 

همچنین تو کوآرتس نمیتونید توی بلوک دیاگرام باس های fixed point و ... رو نمیتونید داشته باشید فقط تو کد میتونید. پس باید مثلا به وکتور تبدیلش کنید اگه تو شماتیک میاریدش. 

برای استفاده از کدا باید اول کتابخونه رو ادد کنید.

use IEEE.fixed_float_types.all;
use ieee.fixed_pkg.all;

ببخشید رنگ نداره!

بعد سیگنالاتون رو اینجوری تعریف میکنید:

 

signal a1 : sfixed(10 downto -20);

 

اول این که sfixed میگه که عدد سایند هست و ufixed هم داریم. دوم این که 10 یعنی 10 تا سمت چپ ممیز و منفی 20 یعنی 20 تا راست ممیز داره. که اگه با تایپ های نرمالی که قبلا دیده بودیم مقایسه بکنیم یکم جالبه.

حالا مثلا دو تا عدد sfixed اینجوری با هم جمع میشن

 

signal a,b : sfixed(5 downto -6);

signal c : sfixed(6 downto -6);

 

a<= sfixed(2.32,a); -- Size of the sfixed number must be determined here

b<= sfixed(1.55,5,-6); -- either this way or you can just do it like the previous line

c <= a+b;

 

دقت کنید عدد قبل ممیز نتیجه رو 6 بیتی گرفتم. اگه چیز دیگه ای بزارید اررور میده و کار نمیکنه چون جمع اینا که 5 بیتی هستن باید 6 بیتی باشه. من خودم 2 روز فکر کنم گیر این بودم چرا کار نمیکنه.

 

 حالا فرض کنید میدونید که میخواید نتیجه رو تو یه چیز 5 بیتی بریزید. از دیزاین خودتون آگاهید به قولی

signal c : sfixed(5,-6);

c <= resize(arg => a+b, size_res => c, overflow_style => fixed_saturate, round_style => fixed_round);

 

میخواستم یه کد برای فیلتر IIR بزارم ولی کده تو لپتاپمه و میدونید قضیه لپتاپ رو (آب و ..) خلاصه که نشد. ولی چیزی نداره خودتون میتونید بزنید. فقط عکسی که از خروجیش گرفته بودم رو میزارم

 

 

 
  • مهدی

Perfection

يكشنبه, ۴ فروردين ۱۳۹۸، ۰۷:۰۶ ق.ظ

سلام

یه جایی بودم یه مهندس قدیمی و با تجربه داشت برای دو نفر مهندس جدید pcb شون رو نگاه میکرد که ببینه خوبه که بفرستن برای چاپ یا نه. بعد یکی ازین مهندس جوون تر ها داشت هی میگفت فلان جاش رو اینجوری کنی بهتر میشه (اون یکی دیزاین کرده بود)

بعد چند دقیقه این مهندس قدیمیه گفت بابا ولش کن بفرست بره دیگه 

Perfection is a long road to nowhere

 

  • مهدی

مهاجرت به VHDL

شنبه, ۱۱ اسفند ۱۳۹۷، ۰۹:۴۹ ب.ظ

سلام

برای این کاری که دارم انجام میدم لازم شد که VHDL یاد بگیرم.

شنیده بودم که VHDL خیلی زبون نچسب و بدیه ولی فکر نمیکردم تا این حد بد باشه.

البته در حال بسیار نچسب بودن بسیار قوی و پر از امکاناته.

تو این پست یه نکته هایی که شاید بتونه مهاجرت از Verilog به VHDL رو آسون تر کنه رو مینویسم که خودم زیاد بهش برخورد کردم.

این پست هم خیلی سادس و چیزایی که خودم بلد بودم از درس مدار منطقی رو دارم میگم. خیلی امکانات دیباگ زیادی داره که اصلا نمیدونم که چیا رو نمیدونم. ولی بنظرم یه jump start خیلی خوبه برای کسی که میخواد از وریلاگ کوچ کنه VHDL.

1- ساختار یه ماژول: 

توی وریلاگ همه چیز رو توی یه ماژول مینوشتیم. مثلا از ساییت asic-world:

 1 //-----------------------------------------------------
  2 // Design Name : up_counter
  3 // File Name   : up_counter.v
  4 // Function    : Up counter
  5 // Coder�     : Deepak
  6 //-----------------------------------------------------
  7 module up_counter    (
  8 out     ,  // Output of the counter
  9 enable  ,  // enable for counter
 10 clk     ,  // clock Input
 11 reset      // reset Input
 12 );
 13 //----------Output Ports--------------
 14     output [7:0] out;
 15 //------------Input Ports--------------
 16      input enable, clk, reset;
 17 //------------Internal Variables--------
 18     reg [7:0] out;
 19 //-------------Code Starts Here-------
 20 always @(posedge clk)
 21 if (reset) begin
 22   out <= 8'b0 ;
 23 end else if (enable) begin
 24   out <= out + 1;
 25 end
 26 
 27 
 28 endmodule 

ورودی خروجی ها توی خط اول تعریف شدن و بعدش اومده گفته که چی هستن و چند بیتی هستن و بعدش reg تعریف کرده و بعدشم یه مدار sequential درست کرده که حساس به لبه ی بالا رونده کلاک هست و enable داره.

 

حالا همین مدار تو VHDL 

1 -------------------------------------------------------
  2 -- Design Name : up_counter
  3 -- File Name   : up_counter.vhd
  4 -- Function    : Up counter
  5 -- Coder       : Deepak Kumar Tala (Verilog)
  6 -- Translator  : Alexander H Pham (VHDL)
  7 -------------------------------------------------------
  8 library ieee;
  9     use ieee.std_logic_1164.all;
 10     use ieee.std_logic_unsigned.all;
 11 
 12 entity up_counter is
 13     port (
 14         cout   :out std_logic_vector (7 downto 0); -- Output of the counter
 15         enable :in  std_logic;                     -- Enable counting
 16         clk    :in  std_logic;                     -- Input clock
 17         reset  :in  std_logic                      -- Input reset
 18     );
 19 end entity;
 20 
 21 architecture rtl of up_counter is
 22     signal count :std_logic_vector (7 downto 0);
 23 begin
 24     process (clk, reset) begin
 25         if (reset = '1') then
 26             count <= (others=>'0');
 27         elsif (rising_edge(clk)) then
 28             if (enable = '1') then
 29                 count <= count + 1;
 30             end if;
 31         end if;
 32     end process;
 33     cout <= count;
 34 end architecture;

همون طور که دیده میشه تو نگاه اول 2-3 برابر بیشتر کد تایپ کردیم. گویا دکتر نوابی که خودش از اونایی بوده که استانداردای VHDL رو در اوردن، به این زبون میگن Verbose یعنی وراج. چون خیلی باید کد زده بشه.

اول کد یه سری لایبرری Add شده. 

این یکی از ویژگی های جالب VHDL هست که باید برای چیزایی که میخواید استفاده کنید حتما لایبرری هاشون رو اضافه کنید. تو یه پست بعدی مثلا یه لایبرری میگم که محاسبات fixed و floating پوینت رو انجام میده. بدون درد سر!

مثلا اینجا چون لازم بوده یه add انجام بشه، لایبرری unsigned logic اضافه شده.

 

تو نگاه دوم! میبینیم که ماژول در واقع یه تیکه نیست، دو تیکه هست. تو بخش اول entity تعریف میشه و تو بخش دوم architecture. 

entity از دو بخش(تا جایی که میدونم) تشکیل میشه. اولیش Generic ها هست و دومیش Port ها هست. Generic ها پارامتر هایی هستن که دیزاینتون با اونا تعریف میشه. مثلا میتونید تعداد بیت های یک رجیستر رو تو اون بگید. موقعی که دارید instance میگیرید از این ماژولتون، میتونید Generic ها رو ست کنید یا اگه کاری نداشته باشید میتونه default value داشته باشه.

بخش دوم Port ها هست که همون ورودی خروجی ها هست. این جا حتما باید سایزشون و تایپشون رو مشخص کنید. چندین روش برای تعریف کردن سایز وجود داره مثلا میتونید تعداد بیت ها رو بگید مثلا 

7 downto 0

یا میتونید range تعریف کنید که از فلان عدد تا فلان عدد باشه. بسته به نوع تایپ چیزی که تعریف میکنید داره. مثلا تو کتابخونه fixed point که میگم بعدا میتونید بگید

7 downto -24

یعنی 7 بیت برای بخش integer و 24 بیت برای بخش fractional.

آها راستی دقت کنید تو لیست ورودی ها، خط آخر ; نداره ! که بسیار آزار دهندس.

 

بریم پایین تر Architecture شروع میشه. آرکیتکچر در واقع نحوه ی کار کرد entity رو میگه. فکر میکنم میتونید چند تا Architecture مختلف تعریف کنید برای شرایط مختلف مثل اون چیزه تو C++

بعد از خط تعریف، باید signal ها رو تعریف کنید.

مفهوم سیگنال برای من خیلی ناراحت کننده بود در قدم اول. بخاطر این که وریلاگ، reg و wire داشت که کاملا کارکردشون مشخص بود ولی VHDL فقط همین signal رو داره که بسته به شرایطی که استفاده میشه، اگه مدار combinational باشه بدون رجیستر و اگه مدار sequential باشه با رجیستر میشه.

 

بعد ازون process رو میبینیم، این یه چیزی تو مایه های always هست تو وریلاگ ولی فکر میکنم مستقیم نمیتونید به posedege مثلا حساسش کنید. به یه سری سیگنال حساسش میکنید و بعد تو شرط ها posedge بودن یه چیزای دیگه رو چک میکنید.

 

بقیش خیلی شبیه وریلاگ هست. فقط باید حواستون باشه مثلا if ها then دارن و elsif درسته نه elseif یا else if(کار دیگه میکنه). و endif; هم داریم. که دقت کنید ; داره.

 

2- تایپ ها

یکی از چیزای بسیار آزار دهنده ولی در عین حال کمکی VHDL اینه که وقتی یه چیزی یه تایپی داره مثلا std_logic_vector که وکتوری از چند بیته، همینجوری نمیتونید توش یه عدد بریزید. باید Cast کنید.

 مثلا 

signal x : std_logic_vector(7 downto 0);

..

x <= 4;

کار نمیکنه چون 4 دسیمال هست.

باید بنویسید

x <= "00000100";

یا مثلا همچین چیزی هم با معنی هست.

x <= (2 => '1', 7 downto 4 => '1', others => '0');

که در نگاه اول بسیار اذیت میکنه. ولی خب در نهایت کمک میکنه سیگنالا اشتباه نشن.

این که keyword های زیادی داره خیلی گیج کنندس ولی کم کم عادت میکنید.

دقت کنید چون بیت بودن اونا توی ' ' قرار گرفتن. اون یکی چون وکتور بود توی " "  بود. اولیه چون عدد بود توی هیچی نبود. 

اگرم میخواید عدد بریزید باید کست کنید دیگه

x <= to_slv(4);

x <= std_logic_vector(4);

فکر کنم جفتشون کار میکنن.

 

3- وصل کردن چیزا.

چیزای مختلف وصل کردنشون به راحتی وریلاگ نیست که چیزای غیر همسایز رو بشه راحت وصل کرد. اگه تعداد بیت ها یکی نباشه باید یه کاریش بکنید مثلا ریسایز کنید

 

4- مدارای combinational و sequential

باید توجه کنید که سینتکس هایی که برای این دوتا استفاده میشه فرق میکنه مثلا 

http://insights.sigasi.com/tech/signal-assignments-vhdl-withselect-whenelse-and-case.html

with a select b <=
    "1000" when "00",
    "0100" when "01",
    "0010" when "10",
    "0001" when "11";
b <= "1000" when a = "00" else 
     "0100" when a = "01" else 
     "0010" when a = "10" else 
     "0001" when a = "11";

 

 

این دوتا برای مدارای combinational هستن و دستور if رو هم که دیدیم تو اولین مثال.

تقریبا شبیه وریلاگه اونجا هم switch داشتیم و استیتمنت های a?b:c که بیشتر شبیه C بود.

 

  • مهدی

خاموش کردن BJT

شنبه, ۴ اسفند ۱۳۹۷، ۱۱:۴۰ ب.ظ

سلام 

بعد ماه ها یه پست برقی لازم شد بزارم.

داشتم مدارم رو تست میکردم، یه جاییش وقتی سیگنال گیت از FPGA داره میاد، من یه BJT گزاشتم که جریان درایور رو خود FPGA نده و مثلا یه ترک خیلی بلند از FPGA تا گیت ماسفت نرفته باشه. 

مدار من این بود:

 

 

و بنظر خیلی ساده باید کار کنه.

ولی اتفاقی که میفتاد این بود که دیوتی سایکل روی پین FPGA مثلا 10 درصد بود، روی گیت ماسفت 18 درصد!

گرفتم پینا رو تک تک تا رسیدم به خود بیس اون BJT هه. 

 

 

این عکس قبل و بعد مقاومت سر گیته.

اولش گفتم شاید مقاومت گیت زیاده طول میکشه خاموش بشه. تو ذهنم داشتم به بار تو گیت ماسفت فکر میکردم مقاومت رو کم کردم نشد.

بعد فکر کردم که deep saturation شاید داره میشه برای BJT هه مقاومت گیت رو خیلی زیاد کردم بازم نشد.

بعد گفتم شاید خازن BJT هه زیاده اونو نگاه کردم دیدم بنده خدا هیچی خازن نداره

بعد گفتم شاید جریان کلکتور داره یه کارایی میکنه کلکتورش رو قطع کردم بازم همین بود. 

یادم اومد که تو یه کتاب سوییچینگ قدیمی راجع به روشن خاموش کردن BJT یه چیزی گفته بود که تو مدار درایورش یه خازن موازی مقاومت بیس کرده بود. اونو تست کردم و جواب داد! اینجوریه که چون خازنه DC سرش میمونه، ولتاژ سر بیس بین 0.7 و منفی 2.3 این حدودا میشه. یعنی با ولتاژ منفی خاموش میشه و بسیار هم خوب خاموش میشه.

یه 1.5 نانو فاراد موازی 10 کیلو اگه اشتباه نکنم یا 50 کیلو. 

 

فکر کنم قدیما مشکل IGBT ها همین بوده که ولتاژ منفی میخواستن.

خلاصه که مدار به این سادگی 

  • مهدی

کنترلر پی آر

دوشنبه, ۳ ارديبهشت ۱۳۹۷، ۱۲:۴۱ ق.ظ


سلام

بالاخره بعد مدت زیادی این کنترلر کذایی رو پیاده کردم برای کار دکتر د. و جواب جالبی هم داد در کمال تعجب.

عکسا رو بزنید بزرگ بشه پایینش fft سیگناله هست

اولیش خروجی اپن لوپه قضیه است. دومی حلقه بسته با یک کنترلر PR که رو 50 هرتز یه جفت قطب موهومی داره و یه چیزای دیگه. همونطور که مشخصه با کنترلر PR هه کلی Narrow شده و تک فرکانس.

ولی سیگنال اینورتره کر و کثیفه بخاطر سوییچینگ بودنش و اونو همباید حل کرد. 

............

دیشب انقدر خوب بود. اولین بار بود،  شاید،  که میترسیدم بخوابم کابوس ببینم. انقدر که پشت سر هم کابوس دیدم... زود تر این چند روز استرس زا به خوبی بگذره... بخوابم ببینم امشب چی میشه


............ 

از دیجی کالا یه سری خرتو پرت سفارش داده بود و ازونجا که گلس گوشیمم شکسته بود یه گلس هن گرفتم. وقتی بسته رسید گلس گوشیمو باز کردم وانداختم رو زمین و گلس جدیده رو از بستش در اوردم دیدم یه ترک گنده روشه قد قبلیه ولی جاش فرق داره :)) هیچی دیگه حس تعویضشم نیست و همین جدیده رو جای قبلیه انداختم بره. 

  • مهدی

غبطه

دوشنبه, ۳۰ بهمن ۱۳۹۶، ۰۸:۴۲ ب.ظ


سلام

امروز دوتا اتفاق افتاد خیلی غبطه خوردم

اول دکتر عباسیان اینا یه پروژه ای رو قدیما شروع کردع بودن که SFC بود. خلاصه بخوام بگم توی نیروگاه به توربین گازی یا بخار ژنراتور سنکرونی وصله که موقع شروع به کار باید یه حداقل سرعتی داشته باشه. مثلا اگه ۳۰۰۰ دور در دقیقه قراره کار کنه باید تا ۹۰ درصد مثلا این ۳۰۰۰ برسوننش تا توربین بتونه کار کنه. بخاطر مسائل مکانیکی قضیه.

این کارو با یک موتور قدیما انجام میدادن ولی دیدن که کار جالبی نیست و گفتن ژنراتور رو به موتور تبذیل میکنیم یعنی بجای این که انرژی بگیریم ازش بهش انرژی میدیم تا بچرخه بعد که به سرعت دلخواه رسید ولش میکنیم و میریم انرژی توربین رو بهش وارد میکنیم و ازش توان میگیریم.

حالا.. اینا میخواستن اینو بسازن و منم تا یه جای اولیه ی کار باهاشون رفتم ولکن بخاطر اون کارای دیگه نشد دنبال کنم. امروز رفتم دیدم که ستاپ یک کیلوواتیشون رو که برای تست کنترلر بسته بودن خیلی جالب کار میکرد و حسابی دلم خواست ! 

توپولوژیش یک پل تایریستوری هست و اینورتر تایریستوری سه فاز و Current Fed. همچنین اکسایتیشن روتور هم با یه چیز دیگه کنترل میشه و جریان DC زیاد و کم میشه تا Field Weakening بوجود بیاد مثلا. همچنین برای پیدا کردن محل روتور هم یه کارایی میکنن با روتور.

خلاصه وقتی دیدم کل اون سیمولینک رو تونستن پیاده کنن خیلی دلم خواست خیلی ! حتی گسترشش هم دادن 


-----------------------


دومیش هم اون سیستم 1.5 مگاواتیه 6.6کیلوولت کنترل پمپ دانشگاهه علم و صنعت بود. اولین نکتش توان بسیار زیادش بود. واقعا خواستنی بود. بعد توی مصاحبه شنیدم که گفت پاور فکتور رو بسیار خوب کردن و برام سوال شد چی گذاشتن برای اون توان. از یکی از بچه هاشون که توی یکی از گروهای تلگرام بود پرسیدم و گفت رکتیفایر 24!!!!!!!!!!!!!!!!!!!!!! پالس و اینورتر 7 سطحی :(

خیلی خوب بود.

الان انقدر حالم گرفتس که نمیدونید. اسمشو بزاریم غبطه ولی واقعا حسودیه کامله. 

نکته لازم به ذکر اینه که اون بلوکای تایریستوریه که تو عکسه هر کدوم 6 تا تایریستوره. منظورم بله 24 تا تایریستوره

نکته بد تر میدونید چیه؟ اینورتر 7 سطحی 2 تا منبع ایزوله میخواد یعنی دو تا ازین ها دارن. یعنی 48 تا تایریستور!! 

واقعا دلم میخواد ازینا ! 

سقف انتظاراتم از خودم 1.3 مگاوات بیشتر شد. تا امروز فکر میکردم 200 کیلووات خیلی دیگه خوبه.

نمیدونم حس میکنید جدی ام یا نه ولی واقعا الان حالم یه جوریه

یعنی ناراحت نیستم ازین که یه سریا همچین کاری کردنا مگه میشه آدم ناراحت بشه 

ازین ناراحتم که من فعلا نمیتونم

  • مهدی

PR! کنترلر

سه شنبه, ۱۷ بهمن ۱۳۹۶، ۱۱:۴۰ ب.ظ

سلام

همیشه دوست داشتم یک کنترلر PR طراحی کنم

در واقع همیشه سر کلاسی یا صحبتی یا هرچی راجع به کنترل خطی میخواستم صحبت کنم بخش 0 شدن خطای ماندگار رو میگفتم..

قضیه اینه که یک کنترلر زمانی میتونه یه ورودی خاص رو دنبال کنه با خطای 0 که توی تابع تبدیلش اون رو داشته باشه. 

من فقط از step استفاده کرده بودم. چون خب واضحه سیستمای DC کار میکردم. مثلا ولتاژ جریان دما یا سرعت یا ... رو به یه مقداری برسونم. ولی همیشه این مثال رو میزدم که مثلا ممکنه یه زمانی لازم بشه یک سینوس رو دنبال کنید و اون موقع باید توی اون فرکانس دو تا دونه قطب موهومی داشته باشید


مشخصه خب

ولی مشکل اینجاست که سیستمی که خودش دوتا قطب ناقابل داره شمام یک کنترلر دو قطبی دارید اضافه میکنید بشدت ناپایدار میشه چون حد فاز براش نمیمونه که.

ولی خب با اضافه کردن یک کنترلر Lead تونستم یکم حد فاز براش درست کنم و اینم خروجیش



البته این حالتیه که بار خیلی کمه (R زیاده) و سیستم یکم به سمت نوسان طبیعیش دوست داره بره برای همین ترنزینت انقدر طولانی شده. و خب باید درست بشه اونم راه خودشو داره نگران نباشید. 

ولی به سیگنال کنترلی تمیز دقت کنید چقدر خوبه.


اینم نمودار بودش.پیک اول مربوط به رزونانس کنترلره و پیک دوم LC خود مداره اینورتره


رو عکسا بزنید بزرگشو ببینید اگه علاقه داشتید.


  • مهدی

برف؟

يكشنبه, ۸ بهمن ۱۳۹۶، ۰۲:۲۲ ب.ظ

سلام

عجب برف خفنیه.

دقت کردید مردم هیچ کدوم وظیفشون نمیدونن دم خونشون رو پارو کنن؟ انگار نه انگار فردا یخ میزنه با مغز میرن زمین

.........

این کلاه پشمالوهه که خریدم با اختلاف زیادی به مفیدترین چیزی که براخودم خریدم تبدیل شد

امروز دیدم برف میاد رفتم بیرون امام حسین یه بادگیر ضدآب بخرم که عین گربه ی خیس نشم. موقع برگشت یه سر رفتم‌ حسن آباد یکم پیچ مهره برای حسن بگیرم. ازونجا گفتم خب یه سر امام خمینی هم برم که سیلیکا ژل بگیرم چون بین امام خمینی و حسن اباد بود دفترش.

رفتم خلاصه و دفترش تخته شده بود. و پیاده رفتم تا امام خمینی 

گفتم تا اینجا پیاده اومدم یه سر ناظم الاطبا هم برم ببینم چشکلیه.

اشتباها خیابون جنوبیشو رفتم. خیابون جنوبیش بیشتر عایق و شیلینگ و چیزای سیالاتی داره. یادم اومد شیلنگ نیوماتیکی هم میخوام و گرفتمش. برگشتم شمالیش و عجب جای مضخرفی بود. عجیب نیست این مکانیکیا خیلی آچار بدست توشون کمه. یه کوچه به عرض یک متر و مغازه های خسته.

برگشتم ازونجا و ناصرخسرو رفتم شاید سیلیکا ژل پیدا کنم و پیدا هم کردم. :)

برگشتم بالا و رفتم سمت مترو یادم اومد خیابون فردوسی یه بار سفارش داده بودم ولی فاکتورشو قرار بود پیک کنه نکرده بود و گرفتمش و برگشتم مترو

خلاصه بادگیره و کلاهه و دستکشه که گرفته بودم رو یه تست اساسی نفوذ آب و عایق بودن گرما کردم. پرفکت جواب دادن.

  • مهدی

ارتباط

چهارشنبه, ۱۳ دی ۱۳۹۶، ۱۰:۵۱ ب.ظ

سلام

شماره فکس دوستتاتون رو بگیرید کم کم نیاز میشه. داشتم با حسن حرف میزدم یهو وی پی ان قطع شد و هر چی وی پی ان دیگه دانلود کردمم کار نکرد.


....

حسن اگه اینجا رو میخونی بگم که تو ظرفیت برابر وقتی پکیج خازنه بزرگتر میشه ESL و ESR اش بیشتر میشه و تقطه رزونانسش به DC نزدیک میشه. پس پکیج کوچیک همیشه بهتره و اونی که اونجاس احتمالا ظرفیتش خیلی زیاده یا ازوناییه که یه بار برات فرستادم تو یه کاناله وارد کرده بود تو هیستوری تلگرامتو بگرد و یا همون ترمینیشنه سافت هه است

  • مهدی