Дипломная работа: Проектирование устройства передачи данных по радиоканалу
·
Конструкция всех
элементов рабочего места (РМ) должна исключать возможность прикосновения
человека к частям и элементам под напряжением свыше 36 В при любых, в том числе
ошибочных, действиях пользователя, не связанных со вскрытием корпуса.
·
Система
электропитания РМ должна обеспечивать гальваническую развязку от потенциала
"земли" с сопротивлением не менее 1 МОм.
·
Система
электропитания РМ должна быть оборудована устройством защитного отключения,
обеспечивающим отключение питающих напряжений от рабочих мест при возникновении
утечки на "землю" свыше 10 мА, при перегрузках и коротких замыканиях.
·
Конструкция
соединителей и разъемов должна исключать возможность ошибочного подсоединения к
линиям с неверным напряжением. Кабели электропитания должны иметь достаточную механическую
прочность (обеспечиваемую, например, защитной гибкой пластмассовой трубкой или
гибким проволочным экраном.).
Мероприятия по эргономике и организации
рабочего места:
Эргономика и эстетика производства
являются составными частями культуры производства, т.е. комплекса мер по
организации труда, направленных на создание благоприятной рабочей обстановки.
В основе повышения культуры
производства лежат требования научной организации труда. Культура производства
достигается правильной организацией трудовых процессов и отношений между
работающими, благоустройством рабочих мест, эстетическим преобразованием среды.
Во время работы часто возникают
ситуации, в которых оператор ЭВМ должен за короткий срок принять правильное
решение. Для успешного труда в таких условиях необходимы рационально
организованная окружающая среда, ограничивающая работника от воздействия
посторонних раздражителей, которыми могут быть: мрачная окраска стен, неудобное
расположение сигнализации, клавиш управления. Поэтому всеми средствами нужно
снижать утомление и напряжение оператора ЭВМ, создавая обстановку
производственного комфорта.
Размерные
характеристики рабочего места
Конструкцией рабочего места должно
быть обеспечено выполнение трудовых операций в пределах зоны досягаемости
моторного поля. Зоны досягаемости моторного поля в вертикальной и
горизонтальной плоскостях для средних размеров тела человека приведены в ГОСТ
12.2.032-78 на стр.2.
Выполнение трудовых
операций "часто" и "очень часто" должно быть обеспечено в
пределах зоны легкой досягаемости. Поскольку наладка блока может производиться
как мужчинами, так и женщинами, следует учесть средние антропометрические
показатели и мужчин и женщин. Так как высота рабочих поверхностей является
регулируемой, то значения будем выбирать для роста 1800 мм. Оно составит 800 мм
согласно номограмме 4 приведенной в ГОСТ 12.2.032-78 на стр.4. Конструкция
регулируемого кресла должна соответствовать ГОСТ 21889- 76. Форма рабочей
поверхности прямоугольная. Расположение оборудования на рабочей поверхности:

Рис.7.3.2.1 - Расположение
приборов на рабочей поверхности стола и распределение зон их досягаемости.
Зона 1 - зона
расположения наиболее важных органов управ-ления.
Зона 2 - зона
расположения легкодоступного оборудования.
Зона 3 - зона размещения
редкоиспользуемых органов управления.
В зоне 1 расположены
монитор и клавиатура. В зоне 2 расположен осциллограф, мультиметр и налаживаемое
устройство. В зоне 3 расположен принтер. Монитор, как самое важное средство
отображения информации, должен быть установлен таким образом, чтобы центр ЭЛТ
находился на линии взгляда или немного ниже.
7.4 Выводы по охране труда
В ходе разработки раздела "Охрана
труда" было создано три параграфа характеризующие работу устройства ,
кодирования - декодирования информации на цифровом сигнальном процессоре, с точки
зрения безопасности жизнедеятельности. В качестве детального изучения и устранения
одной из опасностей была выбрана: Организация рабочего места оператора
и безопасность проведения тестирования. Т.к. оператор нашего устройства должен работать
за ЭВМ, все расматривалось с точки зрения обустройства и безопасности работы оператора
ЭВМ. Оценка тяжести и напряженности труда по эргономическим показателям целью
отнесения их к определенной категории осуществляется по наибольшему
количественному критерию. В результате анализа эргономических показателей
психофизиоло-гических факторов можно сделать вывод, что работа по наладке
устройства относится к категории "легкая, малонапряженная".
Приложение 1
Главный модуль
main.c
//
Подключаем заголовочные файлы и объявляем локальные и глобальные // переменные
#include <drivers.h>
#include <nbdp.h>
#include <string.h>
#include <ctype.h>
int PTT_Recalc;
int DebugLevel;
/*-------------------------------------------------------------*/
int cntr;
int CALL_ID[10];
//
Объявление внешних функций и переменных
extern
void FreeSignal(void);
extern int IsCharReady(void);
extern int FRE_FLAG;
extern int setISS,setIRS;
/*-------------------------------------------------------------*/
void main()
{
int save_dsw;
/*-------------------------------------------------------------*/
// Сброс выводов
FL2..FL0
asm("reset fl0;");
asm("reset fl1;");
asm("reset fl2;");
init_1847(); // Инициализация
кодека
AD1847
UART_Init(); // Инициализация
интерфейса
UART
//
Дадим команду host-устройству на
инициалицацию
SendCommandHost("INIT","POWER
ON");
// Инициализируем
структуру
NBDP (narrowband direct printing)
NBDP_Init();
//
Процесс обмена данными
while(1)
{
if(COMF
& 1)
{
if(COMF
& 0x02) arq(); // запустить протокол ARQ
,
описание в
//
npdp_arq.c
else
if(COMF & 0x1C) fec(); // запустить протокол FEC
,
описание в
//
npdp_fec.c
else
// Если другое сотояние COMF,
то ошибку в host
{
SendHostError(5,COMF); /* COMF ERROR */
StandBy();
}
}
if(FRE_FLAG)
// Если модем свободен
{
FRE_FLAG=0;
//
Отправим команду в host , что модем свободен
SendCommandHost("FRE",FRE_FLAG
== 1 ? "1":"0");
}
/*
Если символ готов к передаче , выбрать команды из порта*/
if(IsCharReady()) SerialDriver();
// Передача
символов
в
HOST
if((COMF & 1) && (ho_count))
{
char block[15],d;
int i=0;
while(hoRead(&d) != -1)
{
block[i++] = d;
if(i>14) break;
}
block[i]=0;
SendCommandHost("TXT",block); // отправка
блока
в
host
}
} // end of while
} // end of main()
/*-------------------------------------------------------------*/
int
CheckCommRequest(char *DATA) // Проверка корректности номера
//
объекта связи (парохода), по
//
которому происходит связь с данным
//
объектом
{
int j=0,tmp;
for(j=0;DATA[j]!=';';)
{
tmp
= DATA[j];
if(!(tmp>='0'
&& tmp<='9')) // цифры не могут быть кодом объекта
{
SendHostError(11,tmp); /* ERR;01.1;ID WRONG DIGIT
(%c),ID[j] */
return 1;
}
CALL_ID[j] = tmp;
j++;
if(j>9) break;
}
CALL_ID[j]=0;
if(j!=4
&& j!=5 && j!=9) /* incorrect ID */ // символ ';' в коде должен
быть // третьим, четвертым или восьмым
{
SendHostError(12,j);
return
1;
}
return
0; // проверка успешна, возврат 0.
}
/*-------------------------------------------------------------*/
//
массив названий команд для функции SendCommandHost(char
*cmd, ...)
char *cmds[] =
{
"TXT","ARQ","CFE","SFE","SET",
/* 0... 4 */
"STA","INI","DEB","DBG","DIA",
/* 5... 9 */
"FRE","STB","TST","STR","FCC",
/* 10...14 */
NULL
};
int CheckCommRequest(char *DATA);
/*-------------------------------------------------------------*/
Программа модуляции
За основу данного способа модуляции взята
- частотная модуляция с использованием протокола морского телеграфа NBDP ( narrowband direct printing) - узкополосное буквопечатанье. В основе
лежит таблица кодовых значений сиволов, которые представляются в виде комбинации
1 и 0 и после модулируются с соответственно частотами 1615 Hz и 1785 Hz. (
таблица символов в файле nbdp_table.c ).
Mod.c
//
Подключаем заголовочные файлы и объявляем локальные и глобальные // переменные
#include <drivers.h>
#include <template.h>
#include <nbdp.h>
/*-------------------------------------------------------------*/
/*#define OUT_KOEFF 0x6000*/
#ifdef RX_TO_TX_
extern int RX_TO_TX[2];
#endif
/*-------------------------------------------------------------*/
int PH_ACC,TMP_PH_ACC;
int PH_INC;
int mod_ready=1;
int BITTIME=1;
int bits_left;
int out_data;
volatile int l_out,r_out;
extern int FDIV,FS_PTT_OFF;
int dbg_cntr;
/*-------------------------------------------------------------*/
/* MODULATOR */
/*-------------------------------------------------------------*/
extern void Timing(void);
void
modulator(void)
{
//
Возможна работа в тестовом режиме.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19 |