Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Твердомер Универсальный итоговый вариант.doc
Скачиваний:
21
Добавлен:
24.03.2015
Размер:
1.69 Mб
Скачать

2.4.3 Калибровка прибора

Процесс калибровки твердомера представляет собой приведение в соответствие (равенство) усреднённого значения твёрдости эталонной меры твёрдости, измеренное твердомером и её номинального значения (выгравировано на боковой поверхности меры согласно ГОСТ 9031-75). Калибровка твердомера пользователем по шкалам твёрдости HRC, HB, HV, HSD позволяет временно ввести поправку (коррекцию) к калибровке твердомера, установленной предприятием-изготовителем при выпуске твердомера из производства.

В зависимости от назначения образцовые меры твердости должны изготовляться следующих типов:

МТБ - меры, применяемые при поверке приборов для измерения твердости по методу Бринелля;

МТР - меры, применяемые при поверке приборов для измерения твердости по методу Роквелла;

МТСР - меры, применяемые при поверке приборов для измерения твердости по методу Супер-Роквелла;

МТВ - меры, применяемые при поверке приборов для измерения твердости по методу Виккерса.

Меры твердости должны изготовляться в виде плиток прямоугольной или круглой формы с одной или двумя (противоположными) рабочими поверхностями. Габаритные размеры мер твердости должны соответствовать табличным данным по ГОСТ 9031-75 "Меры твердости образцовые. Технические условия". Причем для градуировки твердомера необходимы ОДНА (одноточечная градуировка) или ДВЕ (двухточечная градуировка) эталонные меры твёрдости с максимальным и минимальным значениями на контролируемом участке шкалы

твёрдости.

ПРОГРАММА, ИСПОЛЬЗУЕМАЯ УПРАВЛЯЮЩИМИ ЭВМ ПРИ ИСПЫТАНИИ МАТЕРИАЛОВ

#define STAT 0 x 309 /* Регистр состояния макетной платы */

#define CNTRL 0 x 30C /* Управляющий регистр макетной платы */

#define ADC 0 x 308 /* АЦП: адрес и данные */

#define STRTAD 0 x 30A /* Регистр запуска преобразования */

# include string.h

main ( )

{

int adc25, adc65, adcx, slope, tverd;

char c = 0

outp(CNTRL, 1); /* Установка второго бита в управляющем */

/* регистре для разрешения запуска программы*/

/* преобразования */

outp(ADC, 1): /* Выбор канала 1 */

protocol( );

cprintf («Калибровка 1: испытать эталонную меру твердости со значением (25±5) HRC под действием нагрузки 1кг (10Н), испытание проводить при 20 оС \n»);

cprintf («Через 60 с. нажмите любую клавишу. \n»);

while(!kbnit( )); /* Ждать нажатия клавиши */

adc25 = get_data( ) /* Получить данные от АЦП */

/* для эталонной меры твердости (25±5) HRC */

cprintf(«Калибровка 2: испытать эталонную меру твердости со значением (65±5) HRC под действием нагрузки 5кг (50Н), испытание проводить при 20 оС \n2»);

cprintf(«Через 60 с. нажмите любую клавишу. \n»);

while (!kbnit( )); /* Ждать нажатия клавиши */

adc65 = get_data( ) /* Получить данные от АЦП */

/* для эталонной меры твердости (65±5) HRC */

slope = 40/(adc65 – adc25); /* Расчет коэффициента линейной */

/* зависимости твердости от ЭДС */

cprintf ( «Выполнить поверку \n»);

cprintf ( «Ввести значение твердости \n»);

cprintf (* Нажмите любую клавишу для отсчета твердости. \n»);

cprintf (* Нажмите е для выхода из программы. \n»);

while(c! = ‘e’) /* Повторять пока не нажата клавиша е */

{

if (kbnit( ) /* Отсчет твердости, если нажата любая клавиша */

{

adcx = get_data( );

tverd = slope*(adcx – adc25); /* Расчет твердости */* Расчет коэффициента линейной */

/* зависимости твердости от ЭДС */

cprintf (* Нажмите любую клавишу для отсчета твердости \n»);

cprintf (* Нажмите е для выхода из программы. \n»)

cprintf(«Твердость = %d\n», tverd);

c = getch( );

get = data( )

{

int datum;

outp(STRTAD); /* Запуск преобразования */

while(!inp(STAT)&2));/* Ждать завершения преобразования */

datum = inp(ADC);

return (datum); }

protocol ( )

{

char s1, s2,s3, s4;

gets s1; /* Протокол №-s1*/

puts s1;

gets s2; /*имя студента(Шишкина Арина)- s2*/

puts s2;

gets s3; /*номер группы(МП-11-06)-s3*/

puts s3;

cprintf(«Протокол №» s1 «МП-11-6 \n»);

cprintf(«группа:» s3 «\n»)

gets s4; /*дата – s4*/

puts s4;

cprintf(«дата:» s4 «\n»)

cprintf(«Калибровка универсального твердомера \n»);

cprintf(«Российский Государственный Университет нефти и газа имени И.М.Губкина\n»);

cprintf(«Выполнил: студентка гр.» s2 «\n»);

cprintf(«Проверил: доцент Салащенко В.А. \n»);

return( );

}