SlideShare a Scribd company logo
1 of 14
DCM
Introduction
DCM
DCM или Device Communication Manager е част от NAOqi системата.
Това е един софтуерен модул, който управлява комуникацията на
всички устройства (board, sensors, actuators и т.н.) без камерите.
DCM се инсталира автоматично, когато NAOqi е инсталиран. Важна
функция на DCM е да свързва upper level и lower level архитектурите.
DCM се свързва чрез Head Devices, i2c interface, Chest Board, USB
interface.
Upper Level Architecture Високо ниво Архитектура
DCM структура
Следващите два метода могат да се използват, за да
могат различните модулите да използват сензорите
и задвижващите устройства на робота.
1/ За да се достъпят сензорите, трябва да се открие
стойност в паметта ALMemory, която има на
спомагателносто устройство. DCM автоматично
обновява стойностите на сензорите в паметта.
Модулите използват само новообновените стойности
на сензорите.
2/ Модулите използват стойности обновени от DCM
чрез Time Command. Но този метод не може да
промени DCM стойноста директно в паметта
ALMemory. В този случай е получена заявка от DCM,
а стойността на задвижващото устройство в паметта
е променена в самия DCM.
Upper Level Architecture Високо ниво Архитектура
Time Command – използна се за доставяне на
команда, отнасяща се до това кога командата
ще се приложи на задвижващото устройство на
спомагателното устройство. Потребителя може
да изпрати една или повече такива команди, за
да ги достави до задвижващото устройство на
спомагателното устройство.
DCM запазва всички команди на всички
задвижващи устройства. След това се
анализира DCM цикъла на следващата команда,
която се отнася за настоящето време и
използва линейна интерполация, за да изчисли
подходящата команда.
Предходната команда е изтрита веднага след
като е била използвана. Поддържа се
последната команда, а ако тя все още не е
пристигнала ще изпраща към следващия
цикъл.
Upper Level Architecture Високо ниво Архитектура
Time Command Linear Interpolation
Калкулира стойността между две постоянни
местоположения, когато само дву-измерни
крайни точки са дадени.Резултата се
получава след изчисление на следното
уравнение:
Low Level Architecture Архитектура от ниско ниво
За да се използва DCM трябва да се разгледат всички устройства, които принадлежат на
NAO.
Low Level Architecture Архитектура от долно ниво
Device and Definitions of the Auxiliary Device
Устройствата са контролери на помощните устройства. DCM комуникира с
електрическата платка и микроконтролерите на вътрешните устройства.
Всяко устройство се определя от bus type и определени адресни стойности, които имат
подходящо име и собствен отчетлив тип.
Спомагателните устройства са основно задвижващите устройства и сензорите.
Спомагателното устройство се дефинира от самото устройство, негов тип и номер.
Всяко устройство има име, което се използва за комуникация с upper level-a.
Low Level Architecture Архитектура от ниско ниво
LED пример
Пимер за едно от LED задвижващите устройствата, отнася се за червена LED светлина от дясната
страна, кореспондираща на 0 градуса. Тези LED светлини имат важна ключова стойност наречена
Value, тази стойност е от тип float. (0.0 – LED Off 1.0 – LED full)
Joint Sensor пример
Това е името на една от ставите на робота (ляво рамо). Тази става има важна ключова стойност,
наречена Value, която е от тип float. Ако искаме да използваме това устройство като спомагателно
трябва да се прибави в началото.
Low Level Architecture Архитектура от ниско ниво
Device and Definitions of the Auxiliary Device
Всички устройства в НАО
List of Communication Bus
MotherBoard: виртуален bus за устройствата в дънната платка
MotherBoardI2C: I2C bus свързан с главата на робота
Chest: виртуален bus за устройствата в платката, разположена в тялото
ChestI2C: I2C bus свързан за тялото на робота
RS485Down: RS485 bus за всички платки свързани с краката на робота
RS485Up: RS485 bus за всички платки свързани с ръцете и колената на робота
LeftHandI2C: не се използва
RightHandI2C: не се използва
Device Type and List
MotherBoard: Основната CPU платка разположена в главата на робота и има Geode
процесор
ChestBoard: Платка на разположена на тялото, която има ARM процесор
MotorBoard: Всички двигателни платки в робота контролират всички стави без тези
на краката и ръцате
MotorBoardHand: Двигателна платка за ръцете на робота
MotorBoardFoot: Двигателна платка за краката на робота
TouchBoard: Платка, която има капацитативен сензор на горната част на главата
FaceBoard: Платка, която се намира около очите на робота и има LED и IR сензори
USBoard: Платка с ултрасоник сензори
InterialSensor: Платка, която има акселометър и гирометър сензори
EarLeds: Платка, която контролира LED сензорите на ушите
Battery: Платка в батерията
Auxiliary device Type and List
Joint: Ставата е задвижващо устройство, което позволява да се променя
местоположението на ставите на робота.
JointHardnes: Задвижващо устройство, което позволява на волтажа изпратен към
двигателя да може да контролира
Led: LED с един цвят, който променя стойноста си от 0 до 100 %
Power: не се използва
Charge: не се използва
UsSend: Задвижващо устройство, което изпраща стойност от ултрасоник сензора
Auxiliary device Type and List
JointPosition: Сензорна стойност за положението на една става на робота
Current: Настоящата стойност на точно един двигател на става
FSR: Стойността на FSR сензора
Toutch: Статус на датчика за близост
USReceived: Връщаща стойност на ultrasonic сензора
Accelerometer: Връщаща стойност на акселометър сензора
Gyrometer: Връщаща стойност на gyrometer сензора
Angle: Ъгъла на целия робот
Temperature: Температура на двигателя или батерията
Switch: Статус на бутона на тялото или бъмперите на краката
Battery: Статус на сензора на батерията

More Related Content

Similar to DCM

Свободни PLC
Свободни PLCСвободни PLC
Свободни PLCOpenFest team
 
описание и технически параметри на компютърна система
описание и технически параметри на компютърна системаописание и технически параметри на компютърна система
описание и технически параметри на компютърна системаПетя Газдова
 
архитектура на дънна платка
архитектура на дънна платкаархитектура на дънна платка
архитектура на дънна платкаdnaidenowa
 
2. arhitektura na dp
2. arhitektura na dp2. arhitektura na dp
2. arhitektura na dpdnaidenowa
 
5.конструктивни изпълнения на мпс
5.конструктивни изпълнения на мпс5.конструктивни изпълнения на мпс
5.конструктивни изпълнения на мпсdnaidenowa
 
VET4SBO Level 2 module 6 - unit 3 - v1.0 bg
VET4SBO Level 2   module 6 - unit 3 - v1.0 bgVET4SBO Level 2   module 6 - unit 3 - v1.0 bg
VET4SBO Level 2 module 6 - unit 3 - v1.0 bgKarel Van Isacker
 

Similar to DCM (8)

Свободни PLC
Свободни PLCСвободни PLC
Свободни PLC
 
Computer tehnology
Computer tehnologyComputer tehnology
Computer tehnology
 
описание и технически параметри на компютърна система
описание и технически параметри на компютърна системаописание и технически параметри на компютърна система
описание и технически параметри на компютърна система
 
архитектура на дънна платка
архитектура на дънна платкаархитектура на дънна платка
архитектура на дънна платка
 
2. arhitektura na dp
2. arhitektura na dp2. arhitektura na dp
2. arhitektura na dp
 
Tp rasterizaciq
Tp rasterizaciqTp rasterizaciq
Tp rasterizaciq
 
5.конструктивни изпълнения на мпс
5.конструктивни изпълнения на мпс5.конструктивни изпълнения на мпс
5.конструктивни изпълнения на мпс
 
VET4SBO Level 2 module 6 - unit 3 - v1.0 bg
VET4SBO Level 2   module 6 - unit 3 - v1.0 bgVET4SBO Level 2   module 6 - unit 3 - v1.0 bg
VET4SBO Level 2 module 6 - unit 3 - v1.0 bg
 

More from Atelier for robotics

More from Atelier for robotics (8)

Учебник по роботика
Учебник по роботикаУчебник по роботика
Учебник по роботика
 
Основни структури за управление на изчислителния процес
Основни структури за управление на изчислителния процесОсновни структури за управление на изчислителния процес
Основни структури за управление на изчислителния процес
 
Въведение в Python
Въведение в PythonВъведение в Python
Въведение в Python
 
Using NAOqi
Using NAOqiUsing NAOqi
Using NAOqi
 
Python choreographe NAOqi Framework
Python choreographe NAOqi FrameworkPython choreographe NAOqi Framework
Python choreographe NAOqi Framework
 
NAOqi framework
NAOqi frameworkNAOqi framework
NAOqi framework
 
Cross compiling
Cross compilingCross compiling
Cross compiling
 
C++ datatypes
C++ datatypesC++ datatypes
C++ datatypes
 

DCM

  • 2. DCM DCM или Device Communication Manager е част от NAOqi системата. Това е един софтуерен модул, който управлява комуникацията на всички устройства (board, sensors, actuators и т.н.) без камерите. DCM се инсталира автоматично, когато NAOqi е инсталиран. Важна функция на DCM е да свързва upper level и lower level архитектурите. DCM се свързва чрез Head Devices, i2c interface, Chest Board, USB interface.
  • 3. Upper Level Architecture Високо ниво Архитектура DCM структура Следващите два метода могат да се използват, за да могат различните модулите да използват сензорите и задвижващите устройства на робота. 1/ За да се достъпят сензорите, трябва да се открие стойност в паметта ALMemory, която има на спомагателносто устройство. DCM автоматично обновява стойностите на сензорите в паметта. Модулите използват само новообновените стойности на сензорите. 2/ Модулите използват стойности обновени от DCM чрез Time Command. Но този метод не може да промени DCM стойноста директно в паметта ALMemory. В този случай е получена заявка от DCM, а стойността на задвижващото устройство в паметта е променена в самия DCM.
  • 4. Upper Level Architecture Високо ниво Архитектура Time Command – използна се за доставяне на команда, отнасяща се до това кога командата ще се приложи на задвижващото устройство на спомагателното устройство. Потребителя може да изпрати една или повече такива команди, за да ги достави до задвижващото устройство на спомагателното устройство. DCM запазва всички команди на всички задвижващи устройства. След това се анализира DCM цикъла на следващата команда, която се отнася за настоящето време и използва линейна интерполация, за да изчисли подходящата команда. Предходната команда е изтрита веднага след като е била използвана. Поддържа се последната команда, а ако тя все още не е пристигнала ще изпраща към следващия цикъл.
  • 5. Upper Level Architecture Високо ниво Архитектура Time Command Linear Interpolation Калкулира стойността между две постоянни местоположения, когато само дву-измерни крайни точки са дадени.Резултата се получава след изчисление на следното уравнение:
  • 6. Low Level Architecture Архитектура от ниско ниво За да се използва DCM трябва да се разгледат всички устройства, които принадлежат на NAO.
  • 7. Low Level Architecture Архитектура от долно ниво Device and Definitions of the Auxiliary Device Устройствата са контролери на помощните устройства. DCM комуникира с електрическата платка и микроконтролерите на вътрешните устройства. Всяко устройство се определя от bus type и определени адресни стойности, които имат подходящо име и собствен отчетлив тип. Спомагателните устройства са основно задвижващите устройства и сензорите. Спомагателното устройство се дефинира от самото устройство, негов тип и номер. Всяко устройство има име, което се използва за комуникация с upper level-a.
  • 8. Low Level Architecture Архитектура от ниско ниво LED пример Пимер за едно от LED задвижващите устройствата, отнася се за червена LED светлина от дясната страна, кореспондираща на 0 градуса. Тези LED светлини имат важна ключова стойност наречена Value, тази стойност е от тип float. (0.0 – LED Off 1.0 – LED full) Joint Sensor пример Това е името на една от ставите на робота (ляво рамо). Тази става има важна ключова стойност, наречена Value, която е от тип float. Ако искаме да използваме това устройство като спомагателно трябва да се прибави в началото.
  • 9. Low Level Architecture Архитектура от ниско ниво Device and Definitions of the Auxiliary Device
  • 11. List of Communication Bus MotherBoard: виртуален bus за устройствата в дънната платка MotherBoardI2C: I2C bus свързан с главата на робота Chest: виртуален bus за устройствата в платката, разположена в тялото ChestI2C: I2C bus свързан за тялото на робота RS485Down: RS485 bus за всички платки свързани с краката на робота RS485Up: RS485 bus за всички платки свързани с ръцете и колената на робота LeftHandI2C: не се използва RightHandI2C: не се използва
  • 12. Device Type and List MotherBoard: Основната CPU платка разположена в главата на робота и има Geode процесор ChestBoard: Платка на разположена на тялото, която има ARM процесор MotorBoard: Всички двигателни платки в робота контролират всички стави без тези на краката и ръцате MotorBoardHand: Двигателна платка за ръцете на робота MotorBoardFoot: Двигателна платка за краката на робота TouchBoard: Платка, която има капацитативен сензор на горната част на главата FaceBoard: Платка, която се намира около очите на робота и има LED и IR сензори USBoard: Платка с ултрасоник сензори InterialSensor: Платка, която има акселометър и гирометър сензори EarLeds: Платка, която контролира LED сензорите на ушите Battery: Платка в батерията
  • 13. Auxiliary device Type and List Joint: Ставата е задвижващо устройство, което позволява да се променя местоположението на ставите на робота. JointHardnes: Задвижващо устройство, което позволява на волтажа изпратен към двигателя да може да контролира Led: LED с един цвят, който променя стойноста си от 0 до 100 % Power: не се използва Charge: не се използва UsSend: Задвижващо устройство, което изпраща стойност от ултрасоник сензора
  • 14. Auxiliary device Type and List JointPosition: Сензорна стойност за положението на една става на робота Current: Настоящата стойност на точно един двигател на става FSR: Стойността на FSR сензора Toutch: Статус на датчика за близост USReceived: Връщаща стойност на ultrasonic сензора Accelerometer: Връщаща стойност на акселометър сензора Gyrometer: Връщаща стойност на gyrometer сензора Angle: Ъгъла на целия робот Temperature: Температура на двигателя или батерията Switch: Статус на бутона на тялото или бъмперите на краката Battery: Статус на сензора на батерията