При виборі АЦП основним критерієм буде забезпечення необхідної точності перетворення аналогової величини в код.
Мінімальну кількість розрядів АЦП обчислюють за наступною формулою :
N = I*log2(100/dкб)
Де dкб – середньоквадратична похибка квантування .
В наступному випадку маємо :
N = ]log2(100/0.05)[= 11 ;
Крім необхідної кількості розрядів АЦП повинен мати статичну і динамічну похибки перетворення .
Цим вимогам задовольняє високоточний дванадцятирозрядний АЦП послідовного наближення К 1108 ПВ2
Коротка характеристика мікросхеми К 1108 ПВ2 :
- нелінійність dі = ± 2МР (молодших розрядів) ;
- диференційна нелінійність dді = 1 (МР)
- час дискретизації 2,6 мкс ;
- напруга внутрішнього джерела опорної напруги 2,6 В;
- струми споживання Ісс1 =60 мА ; Ісс2=150 мА.
Центральний МП буде виконувати наступні функції :
1) Управління роботою пристрою;
2) Обробка даних, знятих з АЦП, з метою обчислення СКЗ напруги;
3) Запам’ятовування 2500 попередніх вимірів .
Враховуючи низьку частоту вхідного аналогового сигналу особливих вимог до швидкодії МП не ставиться. Пристрій в цілому повинен характеризуватися по таким параметрам :
а) простотою реалізації ;
б) простотою програмування;
в) дешевизною виконання;
г) малогабаритністю конструкції;
д) можливістю перепрограмування на виконання іншої задачі.
Взявши до уваги вище перелічені вимоги , а також з інших поглядів доцільним бачиться використання МП комплекту КР 580. Центральний процесор на базі МП КР580ИК80А , має 8-розрядну шину даних , 16 – розрядну шину адрес та 5- розрядну шину управління.
Спряження 12-розрядного АЦП та 8 розрядної системної ШД здійснюється за допомогою двох 8-розрядних регістрів памяті КР580ИР82. Таким чином 12- розрядний код АЦП розбивається на 2 слова по 8 біт.
Орієнтований розрахунок об”єму необхідної пам”яті.
В системі необхідно має бути постійна (ROM) та оперативна (RAM) пам”яті.
В ROM зберігається код програми , тому і об”єм постійної памяті і буде визначатись довжиною основної програми та всіх інших підпрограм.
Команди мови Асемблер мають довжину 1-3 байти. Знаючи сумарну кількість команд основної програми MAIN та памяті підпрограм (див розділ 6)
Можна обчислити об”єм необхідної ROM.
ROM=MAIN_LONG*3+SQRT_LONG*3+SUM_LONG*3+POWER_LONG*3+DIVISION_LONG*3+MAKE_SURE_LONG*3
При чому :
MAIN_LONG– кількість команд в основній програмі;
SQRT_LONG – кількість в програмі SQRT;
SUM_LONG – кількість в підпрограмі SUM;
POWER_LONG – кількість в підпрограмі POWER;
DIVISION_LONG – кількість в підпрограмі DIVISION;
MAKE_SURE_LONG – кількість в підпрограмі MAKE_SURE.
Підставивши чисельні значення дістанемо :
ROM=39*3+300*3+20*3+70*3+70*3+30*3=1587 байт
При виборі ВІС памяті ROM необхідно також врахувати те, щоб вона мала 8-розрядну шину даних (для спряження з МП комплектом , КР 580)
Враховуючи вище вказані вимоги до об”єму та способу спряження ROM доцільним є використання постійної памяті на базі ВІС К573РФ8
Коротка характеристика ВІС К573РФ8
- ємність 2048 (2 кБ);
- час вибірки адреси 350 мс;
- струм споживання 100 мА;
- час зберігання інформації при відключеному живленні =2500 год;
- тип корпусу 2121 , 28-8.
Оперативна память (RAM) використовується для тимчасового зберігання проміжних та кінцевих результатів роботи програми , а також для запам’ятовування оперативної інформації (стек).
В даному пристрої в RАM записується 2500 значень вимірів , кожне з яких має довжину 2 байти. Крім цього в оперативну память записується М двохбайтових вибірок (за період Т вхідної напруги U(t)). При частоті дискретизації АЦП Fд=10 кГц і частоті вхідної напруги f=2.0 Гц , маємо М=Fд /f=10/2.0=5
Це число задовільняє співвідношенню теореми Котельникова. Під стек і проміжні результати обчислень виділимо 300 байт . Тоді сумарний об”єм RAM складає :
2500*2+5*2+300=5310 байт
Як і в ROMшина данихRAM повинна мати 8 розрядів. Враховуючи це , а також об”єм RAMбудуємо оперативну пам”ять на базі трьох ВІС К537РУ8
Коротка характеристика мікросхеми К537 РУ8.
- має тристабільний вхід, в режимах зберігання і запису керується трьома сигналами
- обмін інформацією відбувається по двохнаправленій шині даних;
- об”єм пам”яті 2048 біт;
- час вибірки 190 мс;
- час звертання 320 мс;
- струм споживання 100 мА
За еквівалентною схемою складаємо повну матрицю провідностей:
Виключаємо базовий вузол, при цьому скорочена матриця буде мати вигляд:
| Y1 -Y1 0 0 |
| -Y1 Yвх+Y1+Yc -Yвх 0 |
Y= | 0 -YвхY2+Y3+Yвх+Yc -Y2 |
| 0 -кYвих kYвих –Y2 Y2+Yвих |
К14 =D14/D11;
| -Y1Yвх+Y1+Yc -Yвх |
D14= | 0 -YвхY2+Y3+Yвх+Yc | = kYвих(Y2+Y3)Y1
| 0 -кYвих kYвих – Y2 |
| Yвх +Y1 +Yс -Yвх 0 |
D11 = | -Yвх Y2+Y3+Yвх+Yс -Y2 |=
| - кYвих kYвих– Y2 Y2+Yвих|
=Y1(Y2+Y3)Yвих+Y2Y1(kYвих-Y2)=kYвихY2Y1
K14=(kYвих(Y2+Y3)Y1)/(kYвихY2Y1) = 1+(R2/R3)
В якості операційного підсилювача вибираємо мікросхему К140УД1В
Задаємо значення R1=10кОм.
Тоді
R2=kR3-R3
Так як коефіцієнт передачі по напрузі даного підсилювача повинен бути рівним 50 то
R2=50*10*103 – 10*103 = 490 kOm
Оскільки в номінальному ряді опорів немає такого номіналу , то набираємо R2з двох опорів
R2=R2¢+R2¢¢ R2¢=470 kOm i R2¢¢=39 kOm,
Причому R2¢¢ буде змінним опором.
5 Оцінка похибки пристрою.
В проектованому пристрою основний вклад в похибку буде вносити тракт аналогово- цифрового перетворення , а також методичну похибку внесе чисельний метод визначення інтегралу.
При аналого-цифровому перетворенні виникають як статичні, так і динамічні похибки.
Перші є результатом відхилення реальної статичної характеристики АЦП від прямої лінії , другі – результат зміни вхідного сигналу за час дискретизації tд .
При вхідному сигналі U(t) АЦП частотою 60 Гц і час дискретизації АЦП tд =7.6 мкс – динамічна похибка буде надзвичайно малою (зміна U(t)) = Um*sinwtза час 2.6 мкс). Тому при обчисленні похибки АЦП будемо враховувати тільки її статичну складову.
dАЦП =100/2N; (5.1)
dАЦП=100/212=100/4096;
Похибка чисельного методу :
dU.M = h2((b-a)/24)max[a,b] |(sin2x)¢¢|
при М=200 отримаєм dU.M = 0.014% ; dпр=dАЦП+dU.M
6 Програмна частина.
Програмне забезпечення , що керує роботою пристрою, має блочну структуру і складається з основної програми MAIN та п’яти підпрограм.
1 п/п SQRT – реалізує добування кореня квадратного з чотирьохбайтного числа;
2 п/п POWER – підносить двохбайтне число до квадрату ;
3 п/п DIVISION – ділить чотирьохбайтне число на двохбайтне;
4 п/п SUM – сумує М двохбайтних чисел;
6 п/п MAKE_SURE – перевіряє , чи напруга U(t) знаходиться в фазі І-ї вибірки.
В системі прийняті наступні адреси по пристроях :
0000 – 1FFF – тригер
2000 – 3FFF – регістр RG1
4000 – 5FFF – регістр RG2
6000 – 7FFF – вхід АЦП ERD ;
8000 – DFFF – RAM;
E000 – FFFF – ROM.
Блок-схема програми MAIN.
Збереження результату |
Перев сист в поч. стан |