هر وقت در مدار منطقي ، خروجي علاوه بر ورودي به حالت هاي گذشته مدار وابسته باشه رو مدار منطقي ترتيبي مي ناميم . مدارهاي ترتيبي بعنوان سلولهاي حافظه معروف هستن ، چرا كه در مدارهاي ترتيبي بر خلاف مدارهاي تركيبي ، خروجي علاوه بر ورودي فعلي ، به ورودي هاي قبلي هم وابسته هست و قادر به حفظ اطلاعات و ذخيره ي اون هاست . فيليپ فلاپ ها اساس مدارهاي ترتيبي رو تشكيل مي دن .
مدارهاي ترتيبي به دو نوع اساسي تقسيم مي شن . مدارهاي ترتيبي كه با تغيير سيگنال ورودي ، تغيير مي كنن رو مدار آسنكرون يا ناهمزمان و مدارهاي ترتيبي كه علاوه بر سيگنال ورودي به سيگنال گسسته زماني وابسته هستند رو مدارهاي سنكرون يا همزمان مي نامند .
عناصر حافظه كه در مدارهاي ترتيبي آسنكرون بكار ميره فيليپ فلاپ هستش كه اين فليپ فلاپ ها مي تونن يك بيت اطلاعات رو بصورت باينري ذخيره كنن . مدار فيليپ فلاپ دو تا خروجي داره كه يكي براي مقدار عادي و ديگري براي مقدار مكمل بيت ذخيره شده بكار مي ره.اطلاعات باينري به صورت هاي مختلف وارد فيليپ فلاپ مي شه كه اين امر منجر بوجود اومدن انواع مختلف فيليپ فلاپ مي شه .
اساس گيت پايه فيليپ فلاپ ها از نوع گيت NAND , NOR هستش و فيليپ فلاپ هاي مختلف بر اساس گيت پايه اي NAND يا NOR ساخته مي شن .
يكي از انواع فيليپ فلاپ ها فيليپ فلاپ نوع SR آسنكرون هستش كه دياگرام لاجيك ، سمبل مداري و جدول صحت نوع NOR اون رو در شكل زير مي بينيد .


با توجه به جدول صحت و عملكرد فيليپ فلاپ نكات زير قابل توجه هستش :
1- باصفر شدن ورودي RوS در صورتيكه مقدار حالت فعلي خروجي فيليپ فلاپ صفر باشه ، مقدار آينده خروجي فيليپ فلاپ تغييري نمي كنه و صفر باقي مي مونه .
2- با صفر شدن ورودي RوS در صورتيكه مقدار حالت فعلي خروجي فيليپ فلاپ يك باشه مقدار آينده خروجي فيليپ فلاپ تغييري نمي كنه و يك باقي مي مونه .
3- بند يك و دو بالا ، نان دهنده ي حفظ اطلاعات در فيليپ فلاپ در دو موقعيت بالاست و اين مطلب مؤيد ذخيره كنندگي فيليپ فلاپ هستش .
4- هر گاه ورودي RوS مساوي يك منطقي بشه بدون در نظر گرفتن مقدار حالت فعلي ((Q(t) ، خروجي مساوي با (Q(t+1) = Q(t+1 هستش .
5- با توجه به موارد بالا دياگرام زماني فيليپ فلاپ RS رو به شكل زير رسم مي كنيم .
در شكل بالا مدار فيليپ فلاپ RS آسنكرون با گيت پايه اي NAND رو هم مي بينيد + جدول صحت اون رو بر اساس حالت فعلي ((Q(t) .
كه با توجه به جدول صحت و عملكرد فيليپ فلاپ ، نكات زير قابل توجه هستش :
1- با 1 شدن ورودي RوS در صورتيكه مقدار حالت فعلي خروجي فيليپ فلاپ صفر باشه ، مقدار آينده خروجي فيليپ فلاپ تغييري نمي كنه و صفر باقي مي مونه .
2- با 1 شدن ورودي RوS در صورتيكه مقدار حالت فعلي خروجي فيليپ فلاپ 1 باشه مقدار آينده خروجي فيليپ فلاپ تغييري نمي كنه و 1 باقي نمي مونه .
3- بند يك و دو بالا نشانگر حفظ اطلاعات در فيليپ فلاپ در دو موقعيت فوق هستش و اين مطلب مؤيد ذخيره كنندگي فيليپ فلاپ هستش .
4- هرگاه ورودي RوS مساوي صفر منطقي بشه بدون در نظر گرفتن مقدار حالت فعلي ((Q(t) ، خروجي آينده مساوي با (Q(t+1) = Q(t+1
.
فيليپ فلاپ نوع SR سنكرون هم يكي ديگه از انواع فيليپ فلاپ هاست . در اين نوع علاوه بر ورودي هاي اطلاعات يك ورودي به نام ورودي كلاك يا پالس ساعت وجود داره ، تغيير حالت فيليپ فلاپ پس از اعمال اين پالس و با توجه به نحوه ي تحريك ورودي انجام مي شه .
در شكل زير مدار فيليپ فلاپ سنكرون SR با گيت پايه اي NOR و دياگرام زماني اون نشان داده شده است .

نوع ديگری از فيليپ فلاپ ها، فيليپ فلاپ نوع JK می باشد كه از آن براي رفع معايب فيليپ نوع SR استفاده مي شود ، اين فيليپ فلاپ يك فيليپ فلاپ عمومي است به طوري كه عملا به كمك اين فيليپ فلاپ مي توانيم عملكرد فيليپ فلاپ هاي ديگر را توليد كنيم .
در شكل زير مدار منطقي و جدول صحت فيليپ فلاپ JK رو مي بينيد .
فيليپ فلاپ هاي نوع T يا Toggale و نوع D از انواع ديگه ي فيليپ فلاپ ها هستن .
از ديگر اجزايي كه در ساخت مدارهاي ترتيبي استفاده مي شن رجيستر ها هستند . رجيستر مداري هستش كه مي تونه چند بيت اطلاعات رو در خودش نگه داره ، اين مدار از چند عنصر تشكيل مي شه كه هر عنصر جاي ذخيره ي يك بيت اطلاعات هستش . اين عناصر به صورت رشته ثابتي به هم متصل هستن .سيگنال هاي كنترلي در تمام عناصر مشتركه و موجب ورود اطلاعات به همه ي بيت هاي رجيستر مي شه . عنصر ذخيره كننده يك بيت اطلاعات رو ، فيليپ فلاپ مي گن . به اين ترتيب براي يك رجيستر n بيتي بايد n فيليپ فلاپ رو در كنار يكديگه قرار بديم و سيگنال هاي ورودي و خروجي اطلاعات به اين فيليپ فلاپ ها بطور مشترك به هم وصل مي شن .
از جمله سيگنالهاي كنترلي براي فيليپ فلاپ ها clear هستش كه همونطور كه از اسمش پيداست وظيفش پاك و آماده كردن فيليپ فلاپ هستش. همچنين سيگنال ساعت براي انتقال اطلاعات ورودي به خروجي فيليپ فلاپ استفاده مي شه . اگه چندين فيليپ فلاپ در كنار هم قررا بگيرن يك رجيستر ساخته مي شه ، در اين حالت سيگنال هاي فوق به يكديگر وصل و از يك نقطه مشترك فرمان مي گيرن .
برگرفته از: ماهنامه دنیای مخابرات و Smart Antenna,8th ISCEE Kerman
کاربرد سامانه های جهت یاب امروزه دیگر منحصر به سامانه های نظامی و کاربرد های خاص چون رادار، سونار و جهت یاب های رادیویی معمولی و ... نشده و مسیر خود را در سیستم های مخابراتی پیشرفته چون سامانه های مخابراتی سیار، سامانه های ردیابی و شناسایی نجوم ودر موارد محدودی در بحث اکوستیک باز نموده است، به طوری که ترکیب سامانه های جهت یابی و مخابرات سیار باعث مزایای فراوانی از جمله افزایش تعداد استفاده کنندگان، افزایش حجم پوشش و کاهش تداخل شده است.
همچنین تقاضا برای خدمات مخابراتی موبایل روز به روز به طور گسترده ای درحال افزایش است از این رو است که پیش بینی می شود در آینده ای نزدیک مخابرات برای دستگاه های موبایل در هر منطقه ای از زمین در تمامی زمانها قابل دسترسی باشد. به نظر می رسد که آرایه آنتن ها که بر روی کشتی ها، ناوها، ماهواره ها و همچنین ایستگاه های اصلی نصب شده اند دارای نقش بسیار مهمی در پاسخگویی به نیاز های مربوطه خواهند بود.
مبحث آرایه بندی و متعاقب آن طراحی الگوریتم های مختلف جهت پردازش اطلاعات حاصله ازآرایه ها مدتی است که تحقیقات زیادی را به خود اختصاص داده است. اگر چه تاریخچه این تحقیقات به سالیان پیش بر می گردد اما مدتی است که به خاطر پیشرفت بشر در دستیابی به سرعت های بالای کلید زنی و پردازشگرهایی که قادرند در مدت زمانی اندک محاسبات زیادی را انجام دهند تحولات چشمگیری یافته است. البته هنوز هم این سرعت کافی نبوده و در بسیاری موارد باعث عدم پردازش مناسب داده ها می گردد. جهت یابی رادیویی از جمله مواردی است که بر روی آن تحقیقات زیادی بعمل آمده است.
لازمه بررسی و تحلیل چنین مباحثی شناخت تکنیک آرایه ها و توانایی استفاده از الگوریتم های مناسب با شرایط مسئله است. این موضوع که ابتدا در سیستم های آرایه وفقی مطرح شده بود در حال حاضر نیز بهمراه مبحث شکل دهی پرتو در زمینه های مختلف خصوصا مخابرات سیار سیستمهایSDMA
و آنتن های هوشمند مورد توجه بسیاری از مراکز تحقیقاتی قرار دارد.
بهره گیری از تکنیک پردازش آرایه ای ابتدا جهت آنتن ها بکار رفت اما پس از مدتی کاربردهای عظیم این تکنیک در کلیه زمینه ها گسترش یافت.
الگوریتم های موجود در مورد مشخص کردن جهت ورودی های دریافتی مدتهاست که مورد توجه بوده و در روش بسیار کارای آن که همان روش های تخمین جهت با استفاده از تکنیک زیر فضای سیگنال است از حدود دهه 1970 آغاز شده است. اصلی ترین الگوریتم مرتبط با تکنیک های زیر فضای سیگنال، الگوریتم میوزیک است.
یکی از کاربردهای سامانه های جهت یاب به تحقیقات یکی از کارشناسان ارشد ارتش آمریکا بر میگردد که با نمونه برداری از صدای یک تانک و سپردن این نمونه صدای تانک در حافظه کامپیوتر و سپس کاشتن تعدادی میکروفن بعنوان سنسور و مقایسه خروجی آرایه با حافظه توانست زاویه ای که این تانک به هنگام حرکت با موتور روشن با سنسور می ساخت را آشکار نماید که این مهم باعث می شد تا بتوان تانک دشمن را با علم به زاویه آن شناسایی نموده و با داشتن مختصات آن بعنوان یک هدف نظامی به آن شلیک نمود. کاری که در گذشته با رادار انجام می شد در حالیکه هزینه ساخت رادار با هزینه ساخت این پروژه نظامی غیر قابل مقایسه بود. بطوریکه چنانچه رادار توسط دشمن مورد تخریب قرار می گرفت هزینه آن بسیار زیاد بود در حالیکه چنانچه این پروژه توسط دشمن تخریب می شد فقط تعدادی میکروفن از دست می رفت.
امروزه جدای از کاربردهای وسیعی که آرایه های میکروفنی به ارمغان آورده اند می توان با نمونه برداری از صدای حوادث یا پدیده ها ( شبیه صدای رعد، صدای انفجار- صدای شکستن شیشه و ...) و سپردن این اصوات به حافظه کامپیوتر و مقایسه آنها با خروجی سنسورها یا آرایه های کاشته شده در محل های مورد نظرمان، بروز یک پدیده یا اتفاق یک حادثه یا رویداد را آشکار و متعاقب آن امور پیشگیرانه را لحاظ نمود. مثلا با پردازشگرهای قوی میتوان بروز رعد را از روی صدای آن تشخیص داده و در پست های توزیع برق فشار قوی در کسری از ثانیه نسبت به قطع برق اقدام نمود و سایر امور پیشگیران های که میتوان با استفاده از آرایه بندی به انجام رساند.
بطور کلی روش های تخمین جهت که تاکنون پیشنهاد شده را می توان به دو گروه تقسیم کرد :
1. روش های تخمین طیفی
2. روش های ساختار ویژهدر روش های گروه اول که مهمترین آنها روش حداکثر احتمال است با محاسبه طیف مکانی و بدست آوردن نقاط ماکزیمم محلی، تعداد و جهت منابع سیگنال تعیین می گردد. تخمین همزمان تعداد و جهت منابع ارسال کننده سیگنال و همچنین زمان پردازش کم این روشها از جمله نقاط قوت آنها محسوب می گردند ولی قدرت تفکیک پذیری کم در تشخیص منابع نزدیک به هم و منابع با اختلاف توانی زیاد، همچنین حساسیت زیاد آنها به نویز و کالیبراسیون آرایه دلایلی هستند که استفاده از آنها را محدود نموده است.
روش های گروه دوم که الگوریتم Music
مهمترین آنهاست بر پایه این خاصیت ماتریس کواریانس پایه گذاری شده اند که فضا توسط بردارهای ویژه آن به دو زیر فضای سیگنال و نویز تقسیم می شود به گونه ای که بردارهای آرایه در جهت منابع، عمود بر زیر فضای نویز قرار می گیرند.
سادگی فرمول بندی، قدرت تفکیک زیاد و حساسیت بسیار کمتر آنها به نویز از جمله محاسن آنهاست ولی از عیوب دسته دوم می توان به این نکته اشاره کرد که بعضی از روش های این دسته فقط قابل اعمال به آرایه های خطی هستند.
برای بهینه کردن یک ارتباط بطوریکه دارای بازده بالایی باشد توجه به چندین مورد اساسی لازم به نظر می رسد که در زیر به آنها اشاره می شود:
1. چگونگی استفاده از آرایه آنتنها بطوریکه با استفاده از پیکربندی های متفاوت، اثر و نتایج مربوط به سامانه های مخابراتی را بهبود بخشد.
2. مدل سیگنال مناسب و کارا، برای پردازش آرایه ها در کنار طرح های مختلف شکل دهی بیم.
3. الگوریتم های وفقی برای تنظیم وزن یک آرایه.
4. بکارگیری چندین روش تخمین جهت.
5. بحث بر روی چندین روش پیش پردازشی.
روش های جدا سازی سیگنال از نویز و حصول مقادیر دقیق متغیر های مورد نیاز برای الگوریتم های مختلف موجب شده است که هر کدام در موقعیت های مختلفی بکار گرفته شوند و حتی بعضی از این الگوریتم ها به دلایل مشکلاتی که فراهم نموده اند، حذف شوند.
یک مشکل جدی پردازش آرایه ها حل مسئله منابع کاملا وابسته است. حل نمودن مشکل منابع وابسته و همچنین منابعی که از لحاظ فاصله بهم نزدیک اند باعث ایجاد یک حوزه فعال در تحقیقات شده است.
درحال حاضر تکنیک های زیر فضای سیگنال به عنوان قدرتمندترین روش در نظر گرفته شده و بر مبنای بردار تجزیه ویژه ماتریس کوواریانس داده ها (یعنی Rxx
) بنا شده است.
· این روش ها قادرند تخمین هایی با قدرت بالاتر را ایجاد کنند.
· ابهام ها کاهش یابند
· تخمین دقیقی برای DOA
و سایر متغیرهای سیگنال و نویز ایجاد می کند.
اما این تکنیک های مشخص شده، حساس به نمونه برداری و مدل های خطا و عدم اطمینان هستند، بخصوص که بر اساس دانش دقیق شکل هندسی آرایه ( موقعیت آنتنها) ، فاز و بهره آنتن، کوپلینگ متقابل بین عناصر آرایه ها و غیره بنا شده اند.
سیستم آنتن هوشمند سیستمی است که المان آنتن چند گانه را با توانایی پردازش سیگنال ترکیب کرده تا به طور خودکار آنتن بهترین تشعشع و یا بهترین دریافت را در پاسخ به سیگنالهایی که در محیط اطراف آنتن هستند، انجام دهد.
Radio Direction Finding
Adaptive Array System
Beam forming
Space Division Multiple Access
Smart Antenna
Multiple Signal Classification
Spectral Estimation Methods
Eigenstructure Methods
Maximum Likelihood
Array processing
Conventional-delay
Directional of arrival
Pre-processing methods
با استفاده از مثال امروز می خواهیم کار کردن با کلید را فرا بگیریم. می خواهیم برنامه ای بنویسیم که شمارنده باینری باشد (مانند جلسه قبل) با این تفاوت که با کلیدی که به یکی از پین های پورت B وصل شده است می خواهیم عمل ریست کردن را انجام دهیم. یعنی هر بار که کلید را فشار دادیم، شمارش باینری از صفر شروع شود.
ابتدا بایستی با دستور پر کاربرد BUTTON آشنا شویم. در واقع این دستور تماس لرزان ناشی از فشردن دکمه( (debouncing را حذف می کند. هنگامی که کلید را فشار می دهیم، پلاتین های آن به صورت ناگهانی قطع و وصل نمی شوند بلکه قبل از این که وضعیت کلید به حالت پایدار برسد، قطع و وصل کلید چندین بار به صورت جست و خیز در مدت کوتاهی ادامه می یابد. به علت سرعت بالای میکروکنترلر ها این جست و خیزهای سریع نیز خوانده می شوند و امکان دارد در روند برنامه اختلال ایجاد کند. برای رفع این مشکل از دستور BUTTON استفاده می کنیم.
این دستور تنها با 8 پایه ی تشکیل دهنده پورت B عمل می کند. شکل کلی دستور BUTTON به صورت زیر می باشد:
BUTTON Pin, State, Delay, Rate, Var, Action, Lable
که در آن:
Pin شماره پایه متصل به کلید (یکی از پایه های پورت B )،
State وضعیت پایه به هنگام فشار دادن دکمه است (صفر یا یک)
Delay تعداد شمارش سیکل پیش از آن که debouncing شروع شود.(صفر تا 255) اگر صفر نوشته شود هیچ debouncing و تکرار خودکار اجرا نخواهد شد و اگر 255 نوشته شود، debouncing انجام خواهد شد ولی تکرار خودکار انجام نخواهد شد.
Rate نرخ تکرار خودکار می باشد. در حقیقت مدت فشرده نگه داشتن کلید را تعیین می کند. ( صفر تا 255)
Var متغیری یک بایتی است که برای شمارش معکوس یا تاخیر به کار برده می شود که قبل از استفاده بایستی با صفر مقدار دهی شود.
Action وضعیت دکمه برای اجرای پرش می باشد ( اگر دکمه فشار داده نشده باشد صفر و اگر فشار داده شده باشد 1 )
Lable محلی از برنامه که در صورت درست بودن Action ، عملیات باید از آن جا ادامه پیدا کند.
شماتیک دو مدل دکمه را که می توان با دستور Button استفاده کرد، در ذیل آورده شده است.

با استفاده از شماتیک سمت راست، وقتی کلید فشرده می شود، ولتاژ 5 ولت که معادل 1 می باشد به پایه ی ورودی اعمال می شود و در شماتیک سمت چپ با فشرده شدن کلید، صفر به پایه ی ورودی اعمال می شود.
برنامه زیر یک شمارنده باینری است که با استفاده از کلیدی که به پورت B.7 وصل شده، می توان این شمارش را ریست کرد. به دستورات Button توجه کنید.
TRISB=%1000000
B0 VAR BYTE : B1 VAR BYTE
LOOP1:
B1=0
FOR B0=0 TO 127
PORTB=B0
PAUSE 250
BUTTON 7,1,245,0,B1,1,LOOP2
NEXT B0
GOTO LOOP1
LOOP2:
PORTB=0
BUTTON 7,0,245,0,B1,1,LOOP1
GOTO LOOP2
END
توجه داشته باشید که چون از 7 پایه ی پورت B برای شمارش استفاده کردیم، شمارنده می تواند تا 127 بشمارد. (2^7=128)
شماتیک مدار به صورت زیر می باشد:

مادامی که کلید فشرده شده باشد، خروجی روی پورت B صفر خواهد بود. دستور Button اول که درون حلقه ی loop1 قرار دارد در واقع می گوید وقتی کلید porttb.7 فشار داده شد (1 شد) برنامه به حلقه loop2 پرش کند. و دستور Button دوم می گوید وقتی کلید مورد نظر رها شد (صفر شد) برنامه به حلقه ی loop1 پرش کند.
در خط دوم از نکته ی زیر استفاده شده است.
نکته) برای نوشتن چند فرمان در یک خط می توانیم از علامت : بین دو دستور استفاده کنیم. به عنوان مثال( (B1=0 : B2=0 .