امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
درخواست:کنترل روشنایی به روش pwm
نویسنده پیام
liliansh آفلاین
تازه وارد

ارسال‌ها: 5
موضوع‌ها: 1
تاریخ عضویت: تير ۱۳۸۹

تشکرها : 1
( 0 تشکر در 0 ارسال )
ارسال: #12
RE: درخواست:کنترل روشنایی به روش pwm
برنامه ای که نوشتم اینه

کد php:
$regfile "m32def.dat"
$crystal 8000000
Config Lcdpin 
Db4 Pinb.4 Db5 Pinb.5 Db6 Pinb.6 Db7 _ Pinb.7 Rs Pinb.2 Pinb.3
Config Lcd 
16 2
Config Adc 
Single Prescaler Auto
Config Kbd 
Portc

Config Timer1 
Pwm Prescale Pwm 10 Compare A Pwm Clear Down ,


Config Porta Output

Dim A 
As Word
Dim B 
As Byte
Dim S 
As Byte
Porta

Start Adc

X
:
Getadc(1)
Lcd A
Goto X

Getkbd()
Waitms 500
Lcd S
Y
:
Do

Pwm1a A
Incr A
Waitms 500

If 1 Then
1
Else
If 
1 Then
0
Else
0 Then
1
End 
If

While 
0
Goto Y
Wend

Loop
end 

ولی فکر کنم خیلی ایراد داره
تو قسمت if منظورم این بوده که اگه ورودی که به سنسور وصله بین 0و 1 بود(یعنی نور محیط بین تاریک و روشن) خروجی که b هست و به لامپ وصله هم بین خاموش و روشن باشه.اگه ورودی کلا خاموش بود لامپ روشن بشه و برعکس.
قسمت بعد هم یعنی تا وقتی که کلید های صفحه کلید فشرده نشدن این کاررو انجام بده و اگه کلیدی فشرده شد ورودی از سنسور نگیر
(آخرین ویرایش در این ارسال: ۱۶-تير-۱۳۸۹, ۱۵:۱۷:۱۷، توسط t3r!p3000.)
۱۶-تير-۱۳۸۹, ۱۲:۲۴:۳۹
ارسال‌ها
پاسخ
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #13
RE: درخواست:کنترل روشنایی به روش pwm
مهندس با اجازت پستتو یه خورده ویرایش کردم برنامه ات بهتر بشه نگاش کرد !

و ایراد زیاد داری !

وقتی می خوای از ورودی آنالوگ بخونی چرا اون پورتو خروجی تعریف کردی !
اینطوری دیگه عددی که از آنالوگ می خونی درست نیست !!!!

برنامه از اون حلقه اولی هیچ وقت بیرون نمیاد !!

شرطهای If رو فکر کنم END iF هاشو کم گذاشتی !
یکم مرتبش کنی خوبه !

بهتره وقتی از کیبرود می خونی اول نشون بدی و بعد تاخیرشو بذاری و نه برعکس !!

و چند تا ایراد جزئی دیگه ....

و یکم وقت بذاری می تونی ردیفش کنی !!
۱۶-تير-۱۳۸۹, ۱۵:۲۱:۱۵
ارسال‌ها
پاسخ
تشکر شده توسط : رسول
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #14
RE: درخواست:کنترل روشنایی به روش pwm
مهندس یه نگاهی به برنامه کوچولوی زیر بنداز !

شما می خوای وقتی محیط تاریک لامپ روشن بشه و هر چی تاریک تر شد نور لامپ بیشتر شه !!!

خوب فرض می کنیم سنسور مقاومت نوری رو به ورودی آنالوگ وصل کردی و طوری مقاوت پوول رو گذاشتی که هر چی تاریک تر بشه عدد دریافتی آنالوگ بیشتر بشه و مقدار مقاومت طوریه که تو تاریکی مطلق عدد 750 رو میگری و تو روشنایی عدد 200 !

حالا در نظر میگیریم وقتی نوز کمتر از 250 شد لامپ روشن بشه و وقتی نور به حد 682 و بالاتر رسید لامپ بره حداکثر روشنایی !!!

و اینم توجه داشته باشه که نور لامپ نباید به سنسورت برسه ! ( علتش مشخصه )

یه برنامه نمونه کوچولو :

کد php:
$regfile "m32def.dat"
$crystal 8000000

Config Adc 
Single Prescaler Auto
Start Adc

Config Timer1 
Pwm Pwm 10 Compare A Pwm Clear Down Compare B Pwm Clear Up Prescale 8
Enable Interrupts

Dim W 
As Word

Do

   
Getadc(0)

   If 
250 Then :
      
Pwm1a Pwm1b 0
   
Else :
      
2
      
If 1023 Then W 1023
      Pwm1a 
Pwm1b W
   End 
If

   
Wait 1

Loop 
۱۶-تير-۱۳۸۹, ۱۵:۳۱:۲۱
ارسال‌ها
پاسخ
تشکر شده توسط : رسول
liliansh آفلاین
تازه وارد

ارسال‌ها: 5
موضوع‌ها: 1
تاریخ عضویت: تير ۱۳۸۹

تشکرها : 1
( 0 تشکر در 0 ارسال )
ارسال: #15
RE: درخواست:کنترل روشنایی به روش pwm
مرسی
روش فکر میکنم بازم
یه مشکل دیگه اینکه وقتی می خوام از lcd مجازی استفاده کنم اصلا چیزی نشون نمی ده حتی یه برنامه ساده مثل lcd"hello"
چیکار کنم که نشون بده؟
ممنون
۱۶-تير-۱۳۸۹, ۱۶:۲۹:۱۵
ارسال‌ها
پاسخ
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #16
RE: درخواست:کنترل روشنایی به روش pwm
اگه منظورت شبیه سازی تو خود بسکامه یکم تاخیرش زیاد !

اول برنامه ات دستور زیر رو بنویس تا تاخیر ها حذف بشن !!!

کد php:
$sim 

یا با پروتئوس تست کن !! !
۱۶-تير-۱۳۸۹, ۱۶:۳۵:۱۱
ارسال‌ها
پاسخ
تشکر شده توسط : رسول


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  راهنمایی در مورد کنترل دور موتور کولر sinastar 12 23,448 ۱۰-آبان-۱۳۹۷, ۱۰:۱۸:۵۹
آخرین ارسال: alimogmov
  کنترل زاویه اتش تریستور nex2004 67 79,728 ۲۲-بهمن-۱۳۹۵, ۲۲:۴۴:۱۷
آخرین ارسال: pars_paya2
  ساخت کنترل فاز با avr mfazl22 3 3,832 ۲۸-اردیبهشت-۱۳۹۵, ۲۲:۴۸:۰۷
آخرین ارسال: kimiafars
  [فوری] کنترل سرعت موتور با کیپد kurd9691 0 2,231 ۱۴-اردیبهشت-۱۳۹۵, ۱۶:۵۷:۴۶
آخرین ارسال: kurd9691
  با میکرو یک کلید 220 رو کنترل کنیم saeidjan 7 13,676 ۱۹-بهمن-۱۳۹۴, ۱۰:۵۴:۱۵
آخرین ارسال: sharin
  شمارنده سه رقمی با امکان کنترل morvarid 1 2,557 ۲۴-مرداد-۱۳۹۴, ۱۵:۳۷:۱۴
آخرین ارسال: omid_phoenix
  [سوال] سرعت میکرو کنترل avr sajjad12 3 3,052 ۱۴-مرداد-۱۳۹۴, ۱۱:۵۷:۳۶
آخرین ارسال: sajjad12
  پیدا کردن باگ برنامه ساده کنترل دو طرفه موتور dc با pwm cortex-m3 1 2,801 ۰۱-مرداد-۱۳۹۴, ۲۳:۱۱:۰۰
آخرین ارسال: omid_phoenix
  [پروژه] کنترل ربات با موبایل ! a.mehran 10 7,773 ۱۱-خرداد-۱۳۹۴, ۱۶:۱۲:۱۸
آخرین ارسال: alira725
  کنترل دما با ترموکوپل abb_saleh 2 5,868 ۰۴-خرداد-۱۳۹۴, ۲۳:۱۴:۲۱
آخرین ارسال: hosseinip

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS