دو استپ موتور دارم میخام برنامه نویسی کنم که بتونه در فرکانس های مختلف کار کنه و یک فشار را برای من تولید کنه و سپس فشار ایجاد شده عامل افزایش فشار داخل مخزن میشه سپس با سنسور لیزر میخام قطر خارجی مخزن را اندازه گیری کنم . دستگاه ساختم ولی برنامه نویسیش را میخام انجام بدهم
لطفا فایل شماره یک رو ملاحظه بفرمایید. یه مستر هست که با سه تا LM75 به طور دائم در ارتباط هست و فقط هم دما رو میخونه. خیلی ساده ، اول آدرس، بعدش دستور ریدینگ دست آخر هم دما. برای هرسه تا سنسور پشت سر هم و کل این فرایند اغلب دوبار تکرار میشه در هر ثانیه. ولی زمان بین خواندن اولی و دومی کاملا متغییر و تصادفی هست. تصویر یک ما اون بلاک سبز هستیم و قراره ما هم از اطلاعات دما با خبر بشیم. شاید اینطور به نظر بیاد که مساله سادست ما هم دستور خواندن رو صادر میکنیم که اطلاعات دما رو برداریم. ولی توجه بفرمایید که اگر خوندن ما با سیگنال های مستر همزمان بشه بلافاصله سیستم تریپ میخوره که این کار ممنوع هست و به هیچ عنوان نباید سیستم وقفه در کارش ایجاد بشه. در وحله اول با روش های آماری با قضیه برخورد شد که احتمال تداخل سیگنال ما با مستر به صفر برسه ولی متاسفانه بعد از چند ساعت این تداخل به خاطر ذات تصادفی خواندن مستر حتما اتفاق می افتد مهمم نیست که چقدر تکنیک های آماری رو پیشرفته کنی. ولی ما اینجا به دنبال راه حل قطعی هستیم. از اونجایی که ما هیچ دسترسی یا کنترلی نه روی اسلیوها و نه روی مستر نداریم، تنها راه اینطور به نظر میاد که مشابه پردازش سیگنال یک logic Analyzer از سیگنال ها فقط نمونه برداری بشه و اونوقت درون یک میکرو پردازش سیگنال و نهایتا استخراج دمای سنسورها انجام بشه. تصویر دوم. بسیار از آی سی های سوییچ I2C توی مارکت برای این موضوع مطالعه شد که متاسفانه برای این پروژه اجرایی نبود. پیشنهاد میکنم اگه بتونیم به طریقی دسترسی به زیر لایه های دستور HAL پیدا کنیم این کار ممکنه میشه چون سخت افزار لازم تو دل میکرو همین الان هم هست. میکرو Stm32f0C8T6 میتونه تا فرکانس نزدیک به 380 کیلوهرتز کلاک I2C تولید میکنه. بدون صورت که مثلا میکرو اطلاعات کلاک و دیتا رو روی یک آرایه ذخیره بکنه بدون اینکه بخواد سیگنال ACL یا NACK بزنه و عملا فقط یه Observerباقی بمونه. اطلاعات بیشتری لازم بود بفرمایید بلافاصله خدمتتون ارسال می گردد.
یک برد طراحی شده با سری g070 داریم به دنبال برنامه نویس هستیم. کلیت برنامه: کنترل pid هیتر و قرايت دو ترموکوپل خروجی pwm جهت درایور استپ موتور (فرکانس متغیر) (دیوتی سایکل ۵۰ درصد) خروجی pwm جهت کنترل دیمر دیجیتال(فرکانس ثابت) (دیوتی متغیر) جهت کنترل دور موتور ac قرایت انکودر و کنترل pid و خروجی pwm جهت درایو دیسی موتور (فرکانس ۳۰ کیلو ثابت) (دیوتی متغیر) تعدادی I/O السیدی با ارتباط سریال سپاس