В настоящее время мы не планируем проводить сертификацию своего оборудования во всевозможных компетентных организациях. Но мы проводим собственную сертификацию, результаты которой и приводятся на этой странице.
Тестирование производилось при помощи следующей программы:
#!/usr/bin/perl -w
use Win32::SerialPort;
$PowerAnts = new Win32::SerialPort('COM2','','') || die "Can't open COM2";
$PowerAnts->baudrate(9600) || die "Can't set 9600";
$PowerAnts->parity('none') || die "Can't set parity none";
$PowerAnts->databits(8) || die "Can't set 8 data bits";
$PowerAnts->stopbits(1) || die "Can't set one stopbit";
$PowerAnts->handshake('none') || die "Can't HW flow control off";
$PowerAnts->write_settings;
sub pwrant_cmd($){
my $cmd = shift;
$PowerAnts->write($cmd."\r");
$_ = '';
my $st = time();
do {
if ( time() > $st + 2 ){
$PowerAnts->write( chr( 27 ));
$errors++;
return "Device NO ANSWER to ".$cmd.", clear buffer";
};
$f = $PowerAnts->read(1);
$_ .= $f;
#print $f;
} while (! /\r/);
return $_;
};
sub testStep($){
my $cmd = shift;
$errors = 0;
my $start_time = time();
for( $i = 0; $i < 3600 ; $i++ ){
$_ = pwrant_cmd($cmd);
$errors++ if(/-/);
};
my $stop_time = time();
print $cmd." time=".($stop_time - $start_time)."sec; errors=".$errors."\n";
};
$PowerAnts->write( chr( 27 ));
print "Begin\n";
testStep('?%');
testStep('?=');
testStep('??');
testStep('=A');
testStep('=abcdefgh');
testStep('?l');
$PowerAnts->close() || die "Что-то не так при закрытии файла устройства\n";;
undef $PowerAnts;
Тесты пройдены без ошибок. Полученная скорость работы устройства практически не отличается от скорости полученной при тестировании в Windows 98/Borland C v6. Это хороший пример задуматься, что быстрее скомпилировання программа или интерпретатор?
PowerAnt - тип SwSw - COM2, 9600 8N1
| Команда | Передано + принято байт за цикл | Число циклов | Передано + принято байт | Время выполнения теста (сек) | Скорость (байт/сек) | Практически (циклов/сек) | Теоретически (циклов/сек) | Циклы % |
|---|---|---|---|---|---|---|---|---|
| ?%<CR> +%<CR> | 6 | 3600 | 21600 | 35 | 617,1 | 102 | 160 | 64,2% |
| ?=<CR> +=ABCDEFGHIJKLMN<CR> | 20 | 3600 | 72000 | 113 | 637,2 | 31 | 48 | 66,3% |
| ??<CR> +? PowerAnt v2_11adc SWSE <CR> | 30 | 3600 | 108000 | 171 | 631,6 | 21 | 32 | 65,7% |
| =A<CR> +=<CR> | 6 | 3600 | 21600 | 34 | 635,3 | 105 | 160 | 66,1% |
| =abcdefgh<CR> +=<CR> | 13 | 3600 | 46800 | 66 | 709,1 | 54,5 | 73,85 | 73,8% |
| =abcdefgh<CR> +=<CR> | 10 | 3600 | 36000 | 58 | 620,7 | 62 | 96 | 64,6% |
Тесты пройдены без ошибок.
PowerAnt - тип SwSw - COM2, 9600 8N1
| Команда | Передано + принято байт за цикл | Число циклов | Передано + принято байт | Время выполнения теста (сек) | Скорость (байт/сек) | Практически (циклов/сек) | Теоретически (циклов/сек) | Циклы % |
|---|---|---|---|---|---|---|---|---|
| ?%<CR> +%<CR> | 6 | 3600 | 21600 | 61 | 354,1 | 59 | 160 | 36,9% |
| ?=<CR> +=ABCDEFGHIJKLMN<CR> | 20 | 3600 | 72000 | 169 | 426,0 | 21 | 48 | 44,4% |
| ??<CR> +? PowerAnt v2_11adc SWSE <CR> | 30 | 3600 | 108000 | 225 | 480 | 16 | 32 | 50% |
| =A<CR> +=<CR> | 6 | 3600 | 21600 | 60 | 360 | 60 | 160 | 37,5% |
| =abcdefgh<CR> +=<CR> | 13 | 3600 | 46800 | 88 | 531,8 | 41 | 73,85 | 55,4% |
| =abcdefgh<CR> +=<CR> | 10 | 3600 | 36000 | 99 | 363,6 | 36 | 96 | 37,9% |
Тесты пройдены без ошибок.
В ходе тестирования четко видно, что если полностью отключить буфер FIFO RS-232 порта, то скорость выполнения команд в некоторых случаях существенно возрастает. Причем разница в скорости может быть практически двукратной (как, например, в случае с командой ?%).