ايران ويج

نسخه‌ی کامل: کنترل زاویه اتش تریستور
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2 3 4 5 6 7
سلام دوستان
برنامه زیر یک برنامه تغییر زاویه اتش هست که اینجا من دوتا برنامه گذاشتم یکی تاخیر زاویه اتش به اندازه میلی ثانیه ( برنامه اول ) و یکی تاخیر برحسب میکروثانیه . برنامه اول درست کار میکنه و میاد بعد از گذر از صفر سیگنال ac به مقدار a میل ثانیه تاخیر ایجاد میکنه و بعد تریستور رو اتش میکنه . ولی برنامه دوم درست کار نمی کنه و با برنامه اول یکی هستش فقط تنها فرقی که داره اینه که تاخیر رو برحسب میکروثانیه انجام میده . ولی عملا این اتفاق نمی افته و دستور waitus a که باید به اندازه a میکروثانیه تاخیر ایجاد کنه عمل نمیکنه .
خودم هر کاری که کردم نشد که نشد .

$regfile = "m32def.dat"
$crystal = 1000000
Config Portb.0 = Output
Portb.0 = 0
Config Pina.0 = Input 'afzayesh time'
Config Pina.1 = Input ' kaheshe time'
Config Int0 = Rising
Enable Interrupts
Enable Int0
On Int0 Triger
Dim A As Word
A = 0
Cursor Off
Cls : Lcd "time triger " ; A
Do
Debounce Pina.0 , 1 , Show1 , Sub
Debounce Pina.1 , 1 , Show2 , Sub



Loop
End

Triger:
Waitms A ' takhire baraye atashe thyristor'

Set Portb.0
Waitus 100
Reset Portb.0


Return


Show1:
A = A + 1
If A > 10 Then A = 10
Cls : Lcd "time triger " ; A
Return





Show2:
A = A - 1
If A < 1 Then A = 1
Cls : Lcd "time triger " ; A
Return

برنامه بالا مثل مرد کار میکنه ولی توی خط 22 اونجایی که نوشتم waitms a میاد به اندازه a میلی ثانیه تاخیر ایجاد میکنه . ولی مشکل اینجاست اگه به جای waitms a بنویسم waitus a دیگه میکرو نمیتونه مقدار a رو بخونه و بعد از گذر از صفر توی همون زاویه صفر درجه تریستور رو تریگر میکنه
اینم برنامه تغییرات برنامه :



$regfile = "m32def.dat"
$crystal = 1000000
Config Portb.0 = Output
Portb.0 = 0
Config Pina.0 = Input 'afzayesh time'
Config Pina.1 = Input ' kaheshe time'
Config Int0 = Rising
Enable Interrupts
Enable Int0
On Int0 Triger
Dim A As Word
A = 0
Cursor Off
Cls : Lcd "time triger " ; A
Do
Debounce Pina.0 , 1 , Show1 , Sub
Debounce Pina.1 , 1 , Show2 , Sub



Loop
End

Triger:
Waitus A ' takhire baraye atashe thyristor'

Set Portb.0
Waitus 100
Reset Portb.0


Return


Show1:
A = A + 100
If A >= 10000 Then A = 10000
Cls : Lcd "time triger " ; A
Return





Show2:
A = A - 100
If A <= 1 Then A = 1
Cls : Lcd "time triger " ; A
Return



مهندس تو هلپ بسکام رو بخونی گفته که واسه waitus باید حتما عدد بذاری و متغییر نمیشه گذاشت !!!

قدیم تر ها به این مشکل خورده بودیم :
http://www.iranled.com/forum/Thread-Serv...9#pid76399
سلام
اره حق با شماست زمانی که به جای متغیر عدد میزاشتم درست کار میکرد ولی زمانی که از متغییر استفاده می کردم دیگه کار نمی کرد.
حالا این مشکل دو راه داره
1- استفاده از تایمر یک
2- یک حلقه بزارم زمانی که وقفه میخوره بیاد توی حلقه و یک متغییر رو اونقدر زیاد کنه تا با مقدار متغییری که دلخواه ماست برابر بشه اینطوری میشه کلک رشتی زد
سلام
از یک حلقه doloop استفاده کردم درست شد .
این برنامه رو فردا برم تست کنم و نتیجه رو می گم . بعدش دیگه بریم روی سیستم سه فاز
سلام
برنامه جواب داد . ممنون از شما دوستان که کمک کردید ( مخصوصا اقا رضا )
حالا می خام ببینم توی یسکوساز تمام موج سه فاز ( 6 تریستوره) به ترتیب کدوم یکی از تریستورها و با چه فاصله زمانی روشن باید بشن .
با این شرایط که من برای هر فاز یک اشکار ساز عبور از صفر بزارم و خروجی هر کدوم از این اشکار ساز ها رو به یک اینتراپت میکرو بدم .
با تشکر
سلام
خبری نشد
سلام من تازه مطالبتونو خوندم برای سه فازه یه برنامه نوشتم که اول باید آشکارسازی عبور از صفر کرد بعدش بیای بایه وقفه از خروجی مدار قبلی تایمر 1روشن کنی سپس6 تاعددی که با محاسبه جای زاویه آتش از6تا تریستور گذاشتیو با عددتایمر1 مقیسه وحروجی مربوطه 1 میکنیWhistle
سلام
مهندس اگه برنامه و شماتیک و داشته باشی بذاری برامون خیلی کمک کردی
برنامه را با کدویزن نوشتم خروجی هاش 6 تا دونس رو پورت بی برا آشکار سازیم از مقایسه کننده آنالوک خود میکرو استفاده کردم که توو برنامه وقفش تایمر 1 روشن کردم ودر هر لحظه عددشو بامقدارعدده راویه آتش که داره از یه a/dمیاد مقیسه میشه در صورت برابری پین مربوه 1 میشه اما یه اشکال داره واونم اینه که تمامه پالسهای آتش کناره همه باتغییر a/dجاشون عوض نمیشه!Sadکسه میتونه کمک کنه چرا ؟؟؟ اینم برنامه که نوشتم
به نظرم روش اول بهتره
سلام دوستان یکی یک توضیحی ابتدایی و کامل در مورد زاویه آتش میگه ..... زاویه آتش چیه ؟
از یکی پرسیدم میگه زمانی که هر قطعه الکتریکی شروع به کار می کنه رو می گویند زاویه آتش ...
صفحه‌ها: 1 2 3 4 5 6 7