<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Блог НТЦ Метротек &#187; интересное</title>
	<atom:link href="http://blog.metrotek.spb.ru/category/things/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.metrotek.spb.ru</link>
	<description>блог разработчиков</description>
	<lastBuildDate>Tue, 07 Feb 2012 15:51:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>СвязьЭкспоКом déjà vu. Отчёт Алексея Литвинова</title>
		<link>http://blog.metrotek.spb.ru/2011/05/21/svyazekspokom-deja-vu-otchyot-alekseya-litvinova/</link>
		<comments>http://blog.metrotek.spb.ru/2011/05/21/svyazekspokom-deja-vu-otchyot-alekseya-litvinova/#comments</comments>
		<pubDate>Sat, 21 May 2011 08:01:41 +0000</pubDate>
		<dc:creator>Алексей Литвинов</dc:creator>
				<category><![CDATA[интересное]]></category>
		<category><![CDATA[новости]]></category>
		<category><![CDATA[выставки]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2815</guid>
		<description><![CDATA[С 10 &#8212; 12 мая 2011 года прошла выставка  Связь&#8212;Экспокомм 2011, в Москве. На ней были представлены зарубежные и отечественные разработки в области связи, начиная от пользовательских сервисов, таких как &#171;родительский контроль&#187; интернет контента, и заканчивая передвижной базовой станцией на базе шасси &#171;Урал&#187;. Выставка не обошлась и без нашего участия, где мы представили всю нашу [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.metrotek.spb.ru/wp-content/uploads/2011/05/expocom2011.jpg"><img src="http://blog.metrotek.spb.ru/wp-content/uploads/2011/05/expocom2011-150x150.jpg" alt="alex и erapid" title="expocom 2011" width="150" height="150" class="alignleft size-thumbnail wp-image-2827" /></a> С 10 &#8212; 12 мая 2011 года прошла выставка  <a href="http://www.sviaz-expocomm.ru/">Связь&mdash;Экспокомм 2011</a>, в Москве. На ней были представлены зарубежные и отечественные разработки в области связи, начиная от пользовательских сервисов, таких как &#171;родительский контроль&#187; интернет контента, и заканчивая передвижной базовой станцией на базе шасси &#171;Урал&#187;. <span id="more-2815"></span>Выставка не обошлась и без <a href="http://metrotek.ru/news/2681/">нашего</a> участия, где мы представили всю нашу линейку приборов, которой интересовались многие посетители!</p>
<p>Мы с Женей Пителем были на выставке всего одни день, но всей нашей физической подготовки не хватило, что бы обойти все полностью=)</p>
<p>А теперь про выставку. Меня лично удивил достаточно большой китайский сектор, где наши друзья из поднебесной представили различные кабели связи, sfp модули различных стандартов, коммутаторы, маршрутизаторы, VoIP шлюзы и многое другое. Я даже засомневался, а в России  ли я=)</p>
<p>Много было PON решений от различных производителей. Часто можно было увидеть макет дома с разведенной по нему оптической сетью.</p>
<p>Порадовали ребята из фирмы &#171;Зелакс&#187;, которые показали полную линейку продуктов для проводной связи, начиная от пользовательского оборудования и заканчивая оборудованием для транспортных сетей, соответствующую мировому уровню!</p>
<p>Достаточно было павильонов с беспроводными системами связи, представляющих различные модемы и антенны для транспортных сетей. Совсем рядом владельцы спутников предлагали в аренду свои каналы. Системы бесперебойного питания, различной мощности, шкафы для узлов связи, GPS-трэкеры, беспроводные системы учета электроэнергии и водоснабжения, портативные радиостанции, промышленные ноутбуки, оптические сварочные аппараты и многое другое можно было увидеть на выставке.</p>
<p>В секторе измерительного оборудования увидел множество спектроанализаторов для радиотрактов, как портативные так и лабораторные реализации. Не так много решений было для измерений в сетях 40G/100G Ethernet, мне удалось найти 2-3 производителя, оно и понятно, в России эти сети только развиваются.</p>
<p>Присутствовало множество оптических рефлектометров с различными характеристиками. Держал<br />
в руках рефлектометр с динамическим диапазоном до 50дБ. </p>
<p>Порадовало то, что из всех тестеров каналов 10G ethernet, наш Bercut-ETX, оказался самым портативным и наиболее простым в использовании. У меня даже сложилось впечатление о том, что существует некий стереотип, что приборы данного класса должны быть большими, громоздкими и дорогими. Но мы этот стереотип с успехом преодолели.</p>
<p>Были еще SDH-анализаторы и анализаторы протоколов, но до них дойти так и не удалось.</p>
<p>Порадовало ПО от фирмы NEC, которое при помощи видеокамеры определяет твой пол и примерный возраст. При мне оно не разу не ошиблось=)<br />
Конечно, всего не перескажешь, но надеюсь небольшое представление о выставки у Вас появилось. Более детально выставку можно посмотреть в <a href="http://www.sviaz-expocomm.ru/maps_rc/?_p=hall_map_main&amp;exid=1333&amp;hid=30&amp;rslw=1280">интерактивном каталоге</a>.</p>
<p>Спасибо!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2011/05/21/svyazekspokom-deja-vu-otchyot-alekseya-litvinova/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Altera: чип с оптикой</title>
		<link>http://blog.metrotek.spb.ru/2011/04/04/altera-chip-s-optikoy/</link>
		<comments>http://blog.metrotek.spb.ru/2011/04/04/altera-chip-s-optikoy/#comments</comments>
		<pubDate>Mon, 04 Apr 2011 14:34:04 +0000</pubDate>
		<dc:creator>Антон Фельдман</dc:creator>
				<category><![CDATA[интересное]]></category>
		<category><![CDATA[10G]]></category>
		<category><![CDATA[altera]]></category>
		<category><![CDATA[fpga]]></category>
		<category><![CDATA[круто]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2711</guid>
		<description><![CDATA[Altera анонсировала выпуск чипов с оптическими интерфейсами на борту (см., там же ссылка на white-paper)! Два приёмника, два передатчика, 28GBps на трансивер. Надеюсь, это не первоапрельская шутка. Представьте, что можно при помощи этой штуки сделать в нашей области, а? PS. Спасибо Косте Добросольцу за информацию.]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.altera.com/corporate/about_us/history/optical/abt-optical-interconnects.html"><img src="http://blog.metrotek.spb.ru/wp-content/uploads/2011/04/fpga_optics.jpg" alt="" title="fpga_optics" width="161" height="154" class="alignleft size-full wp-image-2712" /></a> Altera анонсировала выпуск чипов с оптическими интерфейсами на борту (<a href="http://www.altera.com/corporate/about_us/history/optical/abt-optical-interconnects.html">см.</a>, там же ссылка на white-paper)! Два приёмника, два передатчика, 28GBps на трансивер. Надеюсь, это не первоапрельская шутка. Представьте, что можно при помощи этой штуки сделать в нашей области, а?</p>
<p>PS. Спасибо Косте Добросольцу за информацию.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2011/04/04/altera-chip-s-optikoy/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>О бедном WIZnet&#8217;e замолвите слово</title>
		<link>http://blog.metrotek.spb.ru/2011/03/28/o-bednom-wiznet-e-zamolvite-slovo/</link>
		<comments>http://blog.metrotek.spb.ru/2011/03/28/o-bednom-wiznet-e-zamolvite-slovo/#comments</comments>
		<pubDate>Mon, 28 Mar 2011 17:43:01 +0000</pubDate>
		<dc:creator>Николай Замотаев</dc:creator>
				<category><![CDATA[интересное]]></category>
		<category><![CDATA[разработка]]></category>
		<category><![CDATA[cortex-m3]]></category>
		<category><![CDATA[ethernet]]></category>
		<category><![CDATA[железо]]></category>
		<category><![CDATA[круто]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2677</guid>
		<description><![CDATA[В процессе разработки одного из проектов у нас возникла задача передать поток данных 2Mbit/s через Ethernet в виде udp-потока. Так как сроки были ограничены, развести плату &#171;под задачу&#187; с нормальным ethernet-контроллером, оказалось невозможным. В результате, за основу была взята уже имеющаяся карта от прибора Беркут-ММТ c установленным на борту контроллером WIZnet W5100. Этот контроллер уже [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.wiznet.co.kr/Sub_Modules/en/product/Product_Detail.asp?cate1=5&#038;cate2=7&#038;cate3=26&#038;pid=1011"><br />
<img src="http://blog.metrotek.spb.ru/wp-content/uploads/2011/03/wiznet.jpg" alt="" title="wiznet" width="140" height="140" class="alignleft size-full wp-image-2700" /></a> В процессе разработки одного из проектов у нас возникла задача передать поток данных 2Mbit/s через Ethernet в виде udp-потока. Так как сроки были ограничены, развести плату &#171;под задачу&#187; с нормальным ethernet-контроллером, оказалось невозможным. В результате, за основу была взята уже имеющаяся карта от прибора <a href="http://metrotek.spb.ru/b4.html">Беркут-ММТ</a> c установленным на борту контроллером <a href="http://www.wiznet.co.kr/Sub_Modules/en/product/Product_Detail.asp?cate1=5&#038;cate2=7&#038;cate3=26&#038;pid=1011">WIZnet W5100</a>. Этот контроллер уже применялся в других проектах и ничто не предвещало беды&#8230;<span id="more-2677"></span></p>
<p>Тут следует рассмотреть, что же из себя представляет контроллер WIZnet  W5100. В далёкие времена, когда контроллеры были 8-битными, памяти было мало, а реализация TCP/IP требовалась, появились микросхемы реализующие аппаратно стек TCP/IP. Вроде бы хорошая вещь и, например, для дистанционного управления устройством вполне подходит, позволяя не задумываться о тонкостях протокола TCP/IP, но у всего есть свои ограничения. О том нужны ли такие контроллеры сейчас, при наличии свободно распространяемых IP-стеков для микроконтроллеров и больших объёмах памяти &#8212; вопрос спорный и, возможно, заслуживающий отдельной статьи.</p>
<p>И тут мы подходим к тому, что же у нас пошло не так. W5100 можно подключить по трём возможным интерфейсам: двум разновидностям параллельного и по SPI. В нашем случае, для экономии выводов контроллера и упрощения подключения, wiznet подключили по SPI. О производительности в тот момент просто не задумывались, так как сразу использовать его планировалось только для дистанционного управления.</p>
<p>Когда же возникла потребность прогнать через wiznet 2Мбит/с данных, этот вопрос встал в полный рост. И тут в дело вступили ограничения чипа. Как оказалось, максимальная тактовая частота по SPI для wiznet была ограничена 14-ю мегагерцами. Это не было бы проблемой, если бы wiznet поддерживал burst режим и позволял гнать данные непрерывным потоком. Но тут в дело вступило ещё одно ограничение интерфейса SPI у wiznet&#8217;а &#8212; каждая SPI транзакция у него должна состоять ровно из 4-х байт и содержать код операции, два байта адреса и один байт данных. То есть, на каждый байт полезной нагрузки требовалось передавать 3 байта дополнительных данных. И это &#8212; не считая управляющих транзакций, которые передаются по той же схеме. Максимальная пропускная способность, которую мы считали равной 14Мбит/с, оказалась в 4 (!!!) раза меньше и оказалась 3.5Мбит/с.</p>
<p>Второй проблемой оказался SPI-контроллер в процессоре <a href="http://st.com">STM32</a> &#8212; делители частоты в нём могут быть только степенью 2. В результате на максимальной тактовой частоте процессора, которую мы использовали до того времени, частота шины к wiznet&#8217;у оказалась только 9 мегагерц.</p>
<p>Помимо проблемы передачи данных к wiznet&#8217;у так же требовалось эти данные получить из контроллера линии E1. К счастью, решение, использованное для чтения данных из E1, поддерживало burst-режим передачи данных. Попытки получить максимальную возможную скорость передачи к wiznet&#8217;у привели к использованию следующей схемы передачи данных:</p>
<ol>
<li> Из E1 данные вытягиваются по SPI с помощью контроллера DMA, встроенного в процессор STM32. Так как посылки имеют большую длину, DMA работает с высокой эффективностью и накладные расходы невелики.</li>
<li>Данные в wiznet передаются без использования DMA или прерываний, так как это резко снижает производительность на коротких посылках в связи с высокими накладными расходами.</li>
<li>Для получения возможности одновременной передачи данных в wiznet и приёма данных с линии E1 введена двойная буферизация.</li>
<li>Основное ограничение по времени &#8212; это передача данных в wiznet, в связи с тем, что приём данных из E1 практически не требует процессорного времени.</li>
</ol>
<p>В результате всех этих исследования мы пришли к следующим выводам:</p>
<ol>
<li> Иногда целесообразном снизить тактовую частоту процессора с целью повышения производительности передачи данных по внешним интерфейсам.</li>
<li>DMA у контроллера STM32 эффективно можно использовать только при достаточно длинных транзакциях. Для случая коротких (4 байта ) транзакций потери в скорости слишком велики.</li>
</ol>
<p>В итоге мы смогли получить требуемые 2Мбит/с с небольшим резервом, используемым для целей удалённого управления, а так же как &#171;запас прочности&#187;.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2011/03/28/o-bednom-wiznet-e-zamolvite-slovo/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Pogo-pins: попробовали&#8230; Получилось!!!</title>
		<link>http://blog.metrotek.spb.ru/2010/11/16/pogo-pins-poprobovali-poluchilos/</link>
		<comments>http://blog.metrotek.spb.ru/2010/11/16/pogo-pins-poprobovali-poluchilos/#comments</comments>
		<pubDate>Tue, 16 Nov 2010 08:45:53 +0000</pubDate>
		<dc:creator>Александр Степанов</dc:creator>
				<category><![CDATA[b5]]></category>
		<category><![CDATA[интересное]]></category>
		<category><![CDATA[разработка]]></category>
		<category><![CDATA[jtag]]></category>
		<category><![CDATA[железо]]></category>
		<category><![CDATA[круто]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2456</guid>
		<description><![CDATA[Несколько дней назад мы спрашивали, что такое &#171;pogo-pin&#187;. Никто не ответил. Ну да ладно. Расскажем, так и быть. Долгое время наши программисты мечтали получить для аппаратного тестирования удобный JTAG-разъем&#8230; Сначала мы ставили DIN колодки на 6-10 контактов с шагом 2 и 2.54мм &#8212; надежное и дешевое решение, но имеет ряд недостатков: есть возможность поставить разъем [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/pogo-pin-150x150.jpg" alt="" title="pogo-pin" width="150" height="150" class="alignleft size-thumbnail wp-image-2470" /> Несколько дней назад мы спрашивали, что такое &#171;pogo-pin&#187;. Никто не ответил. Ну да ладно. Расскажем, так и быть.</p>
<p>Долгое время наши программисты мечтали получить для аппаратного тестирования удобный JTAG-разъем&#8230; Сначала мы ставили DIN колодки на 6-10 контактов с шагом 2 и 2.54мм &#8212; надежное и дешевое решение, но имеет ряд недостатков: </p>
<ul>
<li>есть возможность поставить разъем наоборот и тем самым &#171;убить&#187; программатор;
<li>двухрядные колодки, используемые нами, довольно габаритны и занимают немало места на печатной плате;
<li>увеличивают возможность возникновения электростатической помехи, так как длинные штыри разъема являются антеннами для приема возможных помех  вокруг прибора.<span id="more-2456"></span></ul>
<p>Поэтому, приводя схемотехнику наших приборов на соответствие требованиям CE, мы решили отказаться от DIN-разъемов и повсеместно перейти на плоские ленточные FFC кабели и, соответственно, разъемы для них. В наших приборах мы используем 8-ми пиновые односторонние вертикальные и горизонтальные FFC-разъемы. С этими разъемами все оказалось неплохо, и  электростатических помех меньше, и места на плате не так много занимают. Однако, и в этой реализации нашлись кой-какие недостатки:</p>
<ul>
<li>для подключения ленточного кабеля к JTAG-разъему нужно разбирать прибор (например, в <a href="http://metrotek.spb.ru/b3et.html">Беркут-ET</a> необходимо снять плату GbE, что занимает какое-то время и требует отвертки);</p>
<li>довольно высокая стоимость разъемов и ленточных кабелей;
<li>недолговечность ленточных кабелей (при активном использовании, а также <s>неаккуратном использовании</s> кривых руках кабели приходят в негодность);
<li>ещё одна особенность ленточных разъемов кабелей состоит в том, что необходимо использовать заводские кабели, выполненные точно в размер, требуемый для разъема, иначе кабель будет болтаться и коротить контактные площадки. С этим мы и столкнулись, когда стали работать COM-модулями Colibri от Toradex.
</ul>
<p>Разъем JTAG-на этом модуле &#8212; 6-пиновый FFC, и мы сделали кабель для него из 8-пинового&#8230; Получилось, но, так как разъем сам по себе маленький и кабель не точно обрезан в размер, то и дело возникали проблемы с  контактом. Чуть кабель криво повернул или под углом вставил &#8212; всё, контакта нет &#8212; не работает. Попутно пришлось еще разработать переходник JTAG-ARM на 8-пиновый кабель. <a href="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/colibri_old_jtag.jpg"><img class="alignleft size-medium wp-image-2457" src="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/colibri_old_jtag-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p><a href="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/pogo_in_prog.jpg"><img class="alignleft size-medium wp-image-2458" src="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/pogo_in_prog-300x225.jpg" alt="" width="300" height="225" /></a><br />
В общем, работать с такой системой, мягко говоря, не комфортно&#8230; К счастью, на плате Сolibri параллельно контактам разъема разведены площадки для pogo-пинов. Через эти площадки с помощью специального программатора их и прошивают и тестируют на заводе. И мы для удобства пользования, а также для освоения современной технологии тестирования электронной аппаратуры решили повторить такой программатор&#8230; И получилось!!! </p>
<p><a href="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/programmer.jpg"><img class="alignleft size-medium wp-image-2460" src="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/programmer-300x225.jpg" alt="" width="300" height="225" /></a></p>
<p>Что же такое pogo pin&#8230;? Да просто говоря по русски, это пружинящий контакт.</p>
<p><a href="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/pogo_pin.jpg"><img class="alignleft size-medium wp-image-2461" src="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/pogo_pin-300x225.jpg" alt="" width="300" height="225" /></a> Типов pogo-пинов огромное множество, ориентированное на конкретную задачу и использование. Основное использование &#8212; это  тестирование, прошивка, калибровка и измерение параметров электронных компонентов и собранных печатных плат. Особенно массово такая технология применяется при производстве сотовых телефонов и других компактных портативных устройств. В этих  устройствах необходимо тестирование оборудования и прошивка софта, причем происходит это прямо на конвейере. </p>
<p><a href="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/programmer_1.jpg"><img class="alignleft size-medium wp-image-2459" src="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/programmer_1-300x225.jpg" alt="" width="300" height="225" /></a> Суть технологии не очень сложна &#8212; на печатную плату устройства вместо технологического разъема разводятся контактные площадки. Тестирующая головка состоит из pogo-пинов, прижимающихся к этим площадкам на время работы. За счет пружины, находящейся внутри контакта, обеспечивается небольшое усилие на наконечник pogo-пина, прижимающее его к площадке и, тем самым, хороший контакт.</p>
<p>У этой технологии, как и у любой другой, есть преимущества и недостатки&#8230; Она, конечно, вне конкуренции при больших партиях оборудования и при конвейерной сборке (тестировании) оборудования, но при небольших партиях &#8212; не эффективна, так как появляются затраты на создание тестирующей головки, обеспечивающей точное позиционирование и на надежный прижим к контактным площадкам.</p>
<p>Если нам удастся придумать надежную и не дорогую конструкцию такого тестового разъема, то есть шанс перейти на  данную технологию и в наших серийных приборах&#8230; Вдруг получится?..</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2010/11/16/pogo-pins-poprobovali-poluchilos/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>pogo-пин</title>
		<link>http://blog.metrotek.spb.ru/2010/11/11/pogo-pin/</link>
		<comments>http://blog.metrotek.spb.ru/2010/11/11/pogo-pin/#comments</comments>
		<pubDate>Thu, 11 Nov 2010 15:25:24 +0000</pubDate>
		<dc:creator>Антон Фельдман</dc:creator>
				<category><![CDATA[интересное]]></category>
		<category><![CDATA[разработка]]></category>
		<category><![CDATA[jtag]]></category>
		<category><![CDATA[мозг]]></category>
		<category><![CDATA[отладка]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2449</guid>
		<description><![CDATA[а кто знает, что такое pogo-pin? наверняка, многие сталкивались, но мало кто знает, что это так называется. в ближайших выпусках нерегулярного блога наши разработчики расскажут, что есть pogo-pin, зачем и с чем его едят. и картинки будут, куда ж без них?]]></description>
			<content:encoded><![CDATA[<p>а кто знает, что такое pogo-pin? наверняка, многие сталкивались, но мало кто знает, что это так называется.<br />
в ближайших выпусках нерегулярного блога наши разработчики расскажут, что есть pogo-pin, зачем и с чем его едят. и картинки будут, куда ж без них?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2010/11/11/pogo-pin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Немного о тонкостях разработки умных батарей</title>
		<link>http://blog.metrotek.spb.ru/2010/11/09/nemnogo-o-tonkostyah-razrabotki-umnyih-batarey/</link>
		<comments>http://blog.metrotek.spb.ru/2010/11/09/nemnogo-o-tonkostyah-razrabotki-umnyih-batarey/#comments</comments>
		<pubDate>Tue, 09 Nov 2010 19:22:28 +0000</pubDate>
		<dc:creator>Николай Замотаев</dc:creator>
				<category><![CDATA[b5]]></category>
		<category><![CDATA[интересное]]></category>
		<category><![CDATA[разработка]]></category>
		<category><![CDATA[power management]]></category>
		<category><![CDATA[круто]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2285</guid>
		<description><![CDATA[Как уже было написано в этом блоге, для беркута B4.5 разрабатывалась умная батарея. Вроде бы не сложная на первый взгляд задача, по мере разработки и отладки начала обрастать тонкостями. Тонкость нулевая &#8212; много аккумуляторов, хороших и разных. Всё начинается с того, что smart battery сама определяет алгоритм заряда, а зарядное устройство только следует её указаниям. [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://blog.metrotek.spb.ru/wp-content/uploads/2010/11/accum.jpg" alt="" title="accum" width="150" height="100" class="alignleft size-full wp-image-2417" /> Как уже было написано в этом блоге, для беркута B4.5 разрабатывалась умная батарея.<br />
Вроде бы не сложная на первый взгляд задача, по мере разработки и отладки начала обрастать тонкостями. <span id="more-2285"></span></p>
<h4>Тонкость нулевая &#8212; много аккумуляторов, хороших и разных.</h4>
<p>Всё начинается с того, что smart battery сама определяет алгоритм заряда, а зарядное устройство только следует её указаниям. Существует как минимум 2 широко распространённых технологии аккумуляторов (LiIon и NiMH/NiCD) и для NiMH существует несколько возможных алгоритмов заряда. Если Li-Ion аккумуляторы заряжаются достаточно просто (нужно только ограничить зарядный ток и напряжение, а конец заряда определяется по снижению зарядного тока до определённого порога), то в случае с NiMH аккумуляторами есть несколько вариантов заряда, с различными критериями его прекращения и разными областями применения.<br />
Начнём с простейшего trickle charge, который может использоваться для заряда глубоко разряженной батареи или для заряда батареи в условиях низкой температуры. Это заряд с током не превышающим 0.1C (то есть 0.1 ёмкости батареи). По заверению GP, в этом режиме батарея может заряжаться 1 год, без вреда для себя, но полный заряд занимает 14 часов, что в общем-то для портативного прибора неприемлемо.<br />
Дальше имеется второй режим заряда, fast charge. В этом режиме батарея заряжается намного быстрее, зарядные токи порядка 0.3C-1C для него норма. Но в этом режиме необходимо точно контролировать температуру батареи и вовремя заканчивать заряд. Отсюда мы плавно переходим к тонкости номер один.</p>
<h4>Тонкость первая &#8212; сколько вливать миллиамперчасов или конец заряда.</h4>
<p>Как уже было написано выше, в случае с LiIon конец заряда определяется просто &#8212; в батарею просто перестаёт течь ток. В случае с NiMH всё несколько сложнее. По мере окончания заряда, в батарее химические процессы заряда начинают сопровождаться выделением газа. В случае trickle charge выделение имеет небольшую скорость и компенсируется поглотителем и в общем безопасно. Этот процесс сопровождается выделением тепла. В случае быстрого заряда, тепловыделение намного выше и если заряд не будет остановлен вовремя возможно повреждение батареи. Так мы приходим к различным критериям прекращения заряда.  В случае с trickle charge, критерием прекращения заряда достаточно использовать таймер на 14 часов. Если же используется быстрый заряд, то возможно два критерия окончания заряда &#8212; по температуре и по напряжению. Оба эти критерия используют один и тот же физический процесс и практически взаимозаменяемы. Вот только для первого критерия был нужен термодатчик, и достаточно точный, находящийся в тепловом контакте с батареей. Кроме того, так как этот метод использует скорость нарастания температуры в качестве критерия, он не надёжен при изменяющейся температуре окружающей среды. Поэтому в нашем варианте батареи используется критерий окончания заряда по dV/dt. В этом случае момент окончания заряда определяется по тому моменту, когда напряжение на батарее перестаёт расти и начинает падать. Сложность здесь заключается в том, что падение напряжения невелико (милливольты) и достаточно медленное.<br />
Ещё одна тонкость заключается в том, что необходимо предотвратить немедленное начало заряда при небольшом падении уровня заряда, иначе батарея будет систематически перезаряжаться. Это связано с тем, что для определения момента окончания заряда требуется определённое время.</p>
<h4>Тонкость вторая &#8212; учёт ёмкости, калибровка и КПД.</h4>
<p>Одно из преимуществ системы Smart Battery в том, что батарея может оценивать время заряда и разряда. Для этого батарея ведёт учёт своей ёмкости на заряде и разряде. И уже исходя из учтённой ёмкости и текущего тока вычисляет время заряда/разряда. По критериям конца разряда и конца заряда батарея рекалибруется, то есть обновляет значение максимальной ёмкости. Это необходимо делать в связи с тем что батареи отличаются по ёмкости уже с завода а так же стареют, и теряют емкость. Таким образом калибровка необходима для знания точного времени требуемого для заряда батареи, а так же для точного вычисления процента заряда.<br />
И тут в этот простой с виду процесс вклинивается реальный мир в лице страха и ужаса создателей вечных двигателей, а именно КПД. Дело в том что не вся энергия уходящая на заряд батареи преобразуется в химическую энергию, часть уходит в тепловые и другие потери. Если бы КПД был более менее постоянен, то его учёт был бы простой задачей. Но как обычно, законы физики мешают программистам и КПД меняется от множества разных факторов, начиная от температуры батареи и режима заряда и заканчивая фазой луны возрастом батареи. Таким образом точный учёт КПД невозможен или затруднителен. Просто игнорировать КПД можно если он достаточно высок. Например в случае с LiIon аккумуляторами, где он составляет примерно 90%. В случае NiMH аккумуляторов, КПД меняется в зависимости от режима заряда и других факторов и может составлять от 60 до 90%. Неточности учёта КПД приводят к проблемам учёта заряда при неполных циклах батареи, то есть если батарея не разряжается до конца и соответственно рекалибруется только по концу заряда, может нарастать ошибка учёта ёмкости, что приводит к некорректным оценкам времени работы и процента заряда.<br />
Здесь мы подходим к третьей тонкости, а именно учёту саморазряда батареи.</p>
<h4>Тонкость третья, саморазряд.</h4>
<p>От саморазряда страдают все батареи, отличается только его величина. Кроме того в случае Smart Battery, к саморазряду добавляется потребление контроллера батареи, который питается от батареи. Отсюда возникает проблема учёта саморазряда, особенно на NiMH батареях высокой ёмкости, где саморазряд может достигать 30% в месяц. Сам процесс учёта саморазряда не сложен &#8212; достаточно просто вычитать некоторую константу из накопленной ёмкости батареи с определённым временным интервалом. Вот только константа эта на самом деле констатной не является, саморазряд не постоянен по времени и зависит от температуры. Наибольший саморазряд приходится на первые сутки после заряда (порядка 5-10%). Затем он снижается до 1% в день (при комнатной температуре), высокие температуры значительно ускоряют этот процесс. Для упрощения в нашем случае был взят вариант саморазряда с постоянной скоростью в 1% в день.</p>
<p>Вот собственно пока и все тонкости из тех что вспомнились через 2 недели после конца разработки батареи.</p>
<p>В следующих выпусках этого нерегулярного блога :) будет рассказно о сложностях отладки сложных систем на примере умной батареи.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2010/11/09/nemnogo-o-tonkostyah-razrabotki-umnyih-batarey/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Новый Беркут-ММТ и умная батарейка</title>
		<link>http://blog.metrotek.spb.ru/2010/09/23/novyiy-berkut-mmt-i-umnaya-batareyka/</link>
		<comments>http://blog.metrotek.spb.ru/2010/09/23/novyiy-berkut-mmt-i-umnaya-batareyka/#comments</comments>
		<pubDate>Thu, 23 Sep 2010 09:04:05 +0000</pubDate>
		<dc:creator>Антон Фельдман</dc:creator>
				<category><![CDATA[b4]]></category>
		<category><![CDATA[интересное]]></category>
		<category><![CDATA[разработка]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2299</guid>
		<description><![CDATA[Для новой версии прибора Беркут-ММТ наши разработчики железа решили сделать &#171;умный аккумулятор&#187;&#160;(aka smart battery). Что это такое, можно поискать в гугле. В частности, такие батареи стоят в ноутбуках. Но главный смысл идеи в том, что теперь зарядом батареи фактически управляет она сама, вернее, микроконтроллер, который должен быть встроен в её корпус. Алгоритм smart battery у [...]]]></description>
			<content:encoded><![CDATA[<p>Для новой версии прибора <a href="http://metrotek.spb.ru/b4.html">Беркут-ММТ</a> наши разработчики железа решили сделать &#171;умный аккумулятор&#187;&nbsp;(aka smart battery). Что это такое, можно поискать в гугле. В частности, такие батареи стоят в ноутбуках. Но главный смысл идеи в том, что теперь зарядом батареи фактически управляет она сама, вернее, микроконтроллер, который должен быть встроен в её корпус. </p>
<p>Алгоритм smart battery у нас реализован на <span id="more-2299"></span>процессоре Atmel AtMega32HVB. Главная сложность была в том, что Atmel задержал поставку этих устройств всего лишь на 9 месяцев (!!!). Последствия мирового кризиса, говорят поставщики компонентов. </p>
<p>Сам по себе, протокол обмена батареи с зарядным устройством довольно сложен. Но исходные тексты для похожего контроллера на сайте Atmel&#8217;а нашлись. </p>
<p>Не буду вдаваться в технические подробности, но можно сказать, что силами программистов задачу, в основном, решить удалось. После серьёзной доработки напильником и плясок вокруг <s>костра</s> макета у нас теперь есть полноценная &#171;умная батарея&#187;. Прибор также может работать и с другими аккумуляторами. Теоретически. А практически они должны быть заточены под корпус нашего прибора, что маловероятно.</p>
<p>Почему мы не использовали готовые решения? Тоже вопрос. На самом деле, мало кто устанавливает NiMh-аккумуляторы в портативные устройства. Но так уж исторически сложилось в нашей суровой действительности.</p>
<p>А более подробно о реализации хитрого алгоритма Smart Battery, проблемах, с которыми пришлось столкнуться в процессе разработки, и о многих других интересных вещах расскажут наши доблестные программисты в следующих заметках этого нерегулярного блога&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2010/09/23/novyiy-berkut-mmt-i-umnaya-batareyka/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>светофор and daily build</title>
		<link>http://blog.metrotek.spb.ru/2010/08/27/svetofor-and-daily-build/</link>
		<comments>http://blog.metrotek.spb.ru/2010/08/27/svetofor-and-daily-build/#comments</comments>
		<pubDate>Fri, 27 Aug 2010 08:42:52 +0000</pubDate>
		<dc:creator>Антон Фельдман</dc:creator>
				<category><![CDATA[интересное]]></category>
		<category><![CDATA[разработка]]></category>
		<category><![CDATA[мозг]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2282</guid>
		<description><![CDATA[В феврале этого года программисты из Яндекса установили в офисе настоящий светофор для индикации пробок сервиса яндекс-пробки. А некоторые товарищи хотят приспособить такую штуку для отслеживания состояния сборки проекта. Как вам идея?]]></description>
			<content:encoded><![CDATA[<p>В феврале этого года программисты из Яндекса <a href="http://www.rb.ru/office/officestory/officestory/2010/02/24/170548.html">установили в офисе настоящий светофор</a> для индикации пробок сервиса яндекс-пробки. А некоторые <a href="http://astaff.livejournal.com/48909.html?mode=reply">товарищи</a> хотят приспособить такую штуку для отслеживания состояния сборки проекта. Как вам идея?</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2010/08/27/svetofor-and-daily-build/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Нелегкое это дело &#8212; типографика!</title>
		<link>http://blog.metrotek.spb.ru/2010/06/29/nelegkoe-eto-delo-tipografika/</link>
		<comments>http://blog.metrotek.spb.ru/2010/06/29/nelegkoe-eto-delo-tipografika/#comments</comments>
		<pubDate>Tue, 29 Jun 2010 07:37:31 +0000</pubDate>
		<dc:creator>Екатерина Саковская</dc:creator>
				<category><![CDATA[интересное]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2183</guid>
		<description><![CDATA[Недавно мне в руки попала книга Яна Чихольда &#171;Облик книги&#187; о книжном оформлении и типографике. Хотя книга и написана в виде выдержек из статей автора  с  использованием  большого количества специфических терминов, читается она легко и с интересом. В современном мире существует тенденция экономии на всём, в том числе и на качестве печатной продукции: исчезают абзацные отступы, уменьшаются поля, бледнеют [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.metrotek.spb.ru/wp-content/uploads/2010/06/bukva.png"><img class="alignleft size-full wp-image-2187" src="http://blog.metrotek.spb.ru/wp-content/uploads/2010/06/bukva.png" alt="" width="120" height="120" /></a> Недавно мне в руки попала книга Яна Чихольда &#171;Облик книги&#187; о книжном оформлении и типографике. Хотя книга и написана в виде выдержек из статей автора  с  использованием  большого количества специфических терминов, читается она легко и с интересом.</p>
<p><span id="more-2183"></span></p>
<p>В современном мире существует тенденция экономии на всём, в том числе и на качестве печатной продукции: исчезают абзацные отступы, уменьшаются поля, бледнеют шифты. Ян Чихольд выступал за возрождение типографского искусства: книга должна радовать глаз, ее должно быть приятно брать в руки. Прочитав его статьи понимаешь,что создание качественно оформленного произведения &#8212; огромный труд. Имеет значение всё: формат (пропорции) книги, название книги, титульный лист, шрифт, оформление текста, качество и цвет бумаги. В своих исследованиях Ян Чихольд вывел геометричские закономерности (пропорции) оформления книги, с которыми можно ознакомиться прочтя данный сборник статей.</p>
<p>Прочитав книгу, решила пересмотреть оформление наших руководств пользователя: а вдруг и к ним можно будет применить некоторые из данных рекомендаций.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2010/06/29/nelegkoe-eto-delo-tipografika/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>vim и gdb</title>
		<link>http://blog.metrotek.spb.ru/2010/06/25/otladka-priborov-pryamo-v-vime/</link>
		<comments>http://blog.metrotek.spb.ru/2010/06/25/otladka-priborov-pryamo-v-vime/#comments</comments>
		<pubDate>Fri, 25 Jun 2010 12:02:29 +0000</pubDate>
		<dc:creator>Евгений Аполлонский</dc:creator>
				<category><![CDATA[интересное]]></category>
		<category><![CDATA[разработка]]></category>
		<category><![CDATA[gdb]]></category>
		<category><![CDATA[мозг]]></category>

		<guid isPermaLink="false">http://blog.metrotek.spb.ru/?p=2176</guid>
		<description><![CDATA[Долгое время мы не использовали отладчик при разработке приборов, отдавая предпочтение аналитическому методу &#8212; долгому &#171;всматриванию&#187; в код. Но при разработке нового прибора мы все-таки решили попробовать использовать ARM-USB-OCD, и нам понравилось! Прибор прошивается за 5 секунд, можно посмотреть все действия по шагам. Теперь не нужно гадать, в каком треде прибор вываливается в сегфолт. Но [...]]]></description>
			<content:encoded><![CDATA[<p>Долгое время мы не использовали отладчик при разработке приборов, отдавая предпочтение аналитическому методу &#8212; долгому &#171;всматриванию&#187; в код. Но при разработке нового прибора мы все-таки решили попробовать использовать ARM-USB-OCD, и нам понравилось! Прибор прошивается за 5 секунд, можно посмотреть все действия по шагам. Теперь не нужно гадать, в каком треде прибор вываливается в сегфолт.</p>
<p>Но чтобы удовольствие от отладки было полным, мы решили прикрутить gdb к vim&#8217;у. В этом нам помог проект <a href="http://clewn.sourceforge.net/index.html">Clewn</a>.</p>
<p>Последовательность действий такова:</p>
<ol>
<li>Подключаем прибор к компьютеру через ARM-USB-OCD и запускаем утилиту openocd на этом компьютере.</li>
<li>Запускаем gdb и vim:<br />
<code>clewn  -gc arm-elf-gdb -ga &lt;путь-к-elf-файлу&gt;</code><br />
Появляется GDB-shell и открывается gvim.</li>
<li>Присоединяемся к openocd:<br />
<code>(gdb) target remote :3333</code></li>
<li>Прошиваем прибор нужной прошивкой:<br />
<code>(gdb) load &lt;путь-к-elf-файлу&gt;</code></li>
</ol>
<p>Все готово для отладки. Теперь можно открывать в gvim исходники, ставить breakpoint&#8217;ы, смотреть значения переменных и наблюдать за текущем местом выполнения. Список горячих клавиш описан в документации Clewn и, естественно, может модифицироваться.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.metrotek.spb.ru/2010/06/25/otladka-priborov-pryamo-v-vime/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

