Как установить алису колонку


Настройка колонки с голосовым помощником Алиса: способы и особенности | ichip.ru

Подключение Яндекс.Станции к мобильным устройствам 

Один из самых распространенных способов использовать умную колонку с Алисой — через синхронизированный мобильный телефон. Хотя подключать эти динамики можно и через планшеты на платформах ОС Android с версией не меньше 5.0 и iOS от 10.0 и выше. 

Процесс подключения состоит из следующих этапов: 

  1. Подключение смартфона к сети Wi-Fi. 
  2. Включение смарт-колонки к электросети с помощью адаптера. 
  3. Загрузка последней версии приложения Яндекс (не путать с браузером) из Play Market или App Store. Программа будет применяться для управления умной колонкой и ее настройки. 
  4. Вход в аккаунт Яндекс. Если его нет — создание электронной почты на сервисе yandex.ru. Регистрация почтового ящика требует минимум действий от пользователя. 
  5. Переход в приложение и в меню «Сервисы». 
  6. Выбор пункта «Устройства». Для дальнейших действий понадобиться включение Bluetooth. 
  7. Поиск подходящей умной колонки и ее добавление. 
  8. Нажатие на «Продолжить». 
  9. Зажатие на умной колонке кнопки, которая отключает звук. 
  10. Подключение к интернету по Wi-Fi — выбрать следует ту же сеть, к которой подключен телефон. 

Шаг 3

Шаг 4

Шаг 5

Шаг 7

Завершающий этап — выбрать «Проиграть звук». Сам телефон следует поднести поближе к колонке и повернуть к ней динамиком. Теперь осталось подождать несколько секунд, пока Алиса автоматически не подключится к Wi-Fi. После этого можно переходить к дальнейшим настройкам гаджета. 

Подключение к компьютеру 

Если умную колонку подключают к компьютеру, стоит учесть, что сделать это получится только при наличии на нем модуля Bluetooth. Потому проще всего это будет сделать на ноутбуке или мини-ПК. Для обычного системного блока понадобится или специальная плата, или Bluetooth-адаптер.  

Этапы синхронизации с ПК или ноутбуком следующие: 

  • Переход к списку устройств. Для Windows 10 это можно сделать через «Параметры ПК», перейдя к ним из меню «Пуск». Для 7-й версии — через пункт «Устройства и Принтеры».
  • Поиск нужного устройства. Оно появится в списке только при включенном модуле Bluetooth на компьютере и работающей колонке. 
  • Переход к добавлению устройства нажатием соответствующей кнопки. 
  • Активация подключения по Bluetooth на колонке. Это можно сделать вручную, зажав на гаджете кнопку отключения микрофона до активации подсветки. Можно дать смарт-колонке команду: «Алиса, активируй Bluetooth!». 
  • Нажатие на кнопку «Подключить» при определении компьютером «Яндекс.Станции» (может появиться такая надпись или Yandex Station). Иногда приходится указывать PIN, который можно найти в документах на гаджет. 

Проводное подключение Яндекс.Станции к компьютеру не предусмотрено. Хотя при отсутствии Bluetooth можно соединить гаджет с системным блоком при помощи кабеля. Но воспроизводить звук с ПК он все равно не будет — возможно только использовать его в качестве умного микрофона. 

Подключение к телевизору 

Колонку можно попробовать подключить и к телевизору. Но беспроводное подключение поддерживается только для телевизоров марки Samsung, начиная с 6-й серии. Процесс соединения смарт-колонки с большинством моделей включает такие шаги: 

  1. Подключение гаджета к ТВ кабелем HDMI. 
  2. Проверка правильности подключения. Для этого понадобится перейти на канал HDMI — здесь должен появиться интерфейс приложения для работы с колонкой. 
  3. Переход к работе с Яндекс.Станцией. 

При наличии у пользователя телевизора Samsung, подходящего для беспроводного подключения, придется выполнить немного другие действия. Сначала скачать на телефон приложение Samsung SmartThings. Затем — зарегистрироваться в нем и войти в учетную запись.  

Теперь в установленной на смартфоне программе придется добавить телевизор (нажать «+» и указать модель). Затем подождать, пока система определит умную колонку. Следующий шаг — добавление телевизора уже в приложение Яндекс. Здесь на той же вкладке «Устройства» нужно найти уже не модель телеприемника, а утилиту SmartThings и выбрать «Объединить аккаунты». 

Настройка умной колонки с Алисой 

После подключения гаджета к выбранному устройству можно использовать голосовые команды для установки требуемых пользователю настроек. В том числе — выбрать подходящую громкость, изменить голос и команду, которой вызывается Алиса. 

Выбор уровня громкости 

Для установки подходящей громкости можно отдавать Алисе такие команды: 

  • «Алиса, громкость на 1…10». Это позволит выбрать один из 10 уровней. 
  • «Алиса, громкость на 1…100%». Позволяет точнее установить показатель громкости. 
  • «Алиса, сделай громче (тише)». Перевод громкости на один уровень выше (или ниже). 
  • «Алиса, громкость на минимум (максимум)». Установка первого (десятого) уровня. 

Громкость можно настраивать и вручную. Для этого используются кнопки на верхней панели. Контролировать показатель помогает изменение подсветки. На версиях с часами громкость показывается на фронтальном дисплее. 

  • Эксплуатация

    Устанавливаем Android-приложения в обход Google Play Store: подробная инструкция

Настройка голоса владельца 

Чтобы колонка автоматически определяла голос пользователя, следует произнести «Алиса, запомни мой голос». После этого придется повторить несколько предложенных ассистентом фраз. Гаджет автоматически распознает только одного человека, выделяя среди нескольких других пользователей. Потому желательно настраивать в качестве «хозяина» владельца аккаунта. 

Иногда гаджет ошибается, неправильно определяя пользователя. Это возможно, если голоса людей похожи, например, у членов одной семьи. Также случаются ошибки, если попытаться дать команду Алисе шепотом. 

Изменение фразы вызова 

Еще одна настройка, которая может понадобиться пользователю — установка новой фразы для того, чтобы голосовой помощник отреагировал на команду. Для этого можно использовать смартфон: 

  1. Открыть приложение «Яндекс» на смартфоне. 
  2. Перейти к меню «Устройства». 
  3. Выбрать «Настройки» и найти «Устройства с Алисой». 

Теперь осталось только выбрать пункт «Откликаться на имя». А затем установить другой вариант слова, которое будет запускать помощника в работу. 

Перезагрузка и сброс до заводских настроек 

Перезагружать колонку несложно. Это делается вручную — путем отключения адаптера от электросети или от Яндекс. Станции. Через 5–10 секунд можно снова подключить гаджет к питания. Смарт-колонка начнет загрузку, в процессе которой на верхней панели горит фиолетовая подсветка. 

Для сброса настроек до заводских параметров тоже придется отключить устройство от питания. И в уже выключенном состоянии нажать кнопку активации колонки, не отпуская при подключении адаптера. Палец следует держать до тех пор, пока световой индикатор не станет желтым. Теперь можно отпускать кнопку и после приветствия Алисы заново перенастраивать Яндекс.Станцию. 

Читайте также:

  • Как пользоваться Telegram: от простого обмена сообщениями до использования чат-ботов
  • Три секрета правильной стирки, о которых знают не все

Как активировать колонку Алису: пошаговая инструкция

Лайфхак

Яндекс станция продается в нескольких исполнениях: мини, обычная и макс. Они отличаются своими рабочими характеристиками, мощностью звука, функционалом. Но первый запуск и настройка на всех устройствах производится одинаково. Разберем, как правильно активировать колонку Алису при первом использовании.

Для чего нужна умная колонка

Колонка Алиса позволяет управлять домашними приборами, становится отличным помощником своему хозяину. Голосовое управление позволит убрать долой всевозможные пульты и провода. Она умеет:

  • Воспроизводить аудио со смартфона или компьютера.
  • Включать-выключать свет, другие бытовые приборы, такие, как чайник или кофеварка.
  • Работать с умными розетками.
  • Напоминать о важных событиях в календаре, давать полезную информацию. К примеру, о точном времени, погоде или оптимальном маршруте навигатора.
  • Включать будильник с приятной музыкой, создавать своеобразную домашнюю атмосферу, например, звуками моря или природы.

Для доступа к этому широкому перечню функций необходимо активировать Алису. Перейдем к инструкции по активации колонки.

Подготовка Яндекс станции

Установка приложения

Для начала, потребуется установить на смартфон приложение «Яндекс с Алисой». Оно доступно как для Apple (версия iOS 10.0 и новее), так и для Android (версия 5.0 и новее).

  1. Открываем магазин приложений устройства.
  2. Вбиваем название в форму поиска.
  3. Нажимаем Установить, ждем окончания скачивания.
  4. При первом запуске нужно активировать входом аккаунт Яндекс.

Важно! Если профиля Яндекс нет, то его можно заранее создать на официальном сайте компании.

Запуск приложения

Перед открытием приложения следует убедиться, что телефон подключен не к сети оператора, а именно к Wi-FI, только так смартфон и колонка смогут работать в одной сети.

  1. Открываем «Яндекс с Алисой».
  2. В основном меню нажимаем пункт «Устройства».
  3. Раскрываем раздел «Управление устройствами», нажимаем «Добавить новое».
  4. Из списка нужно выбрать то, которым планируете пользоваться.
  5. Следующее окно предложит запустить станцию.
  6. Теперь переходим к включению самой колонки.

Первое включение Станции

После распаковки колонки, перед тем, как ее активировать, нужно действовать по следующему алгоритму:

  1. Подключить адаптер питания к колонке.
  2. Включить его в розетку.
  3. Нажать кнопку включения.
  4. После этого замигает индикатор на колонке. Типы индикаторов зависят от модели колонки.
  5. Станция переводится в режим ожидания активации.

Читайте также: Как подключить Алису к Интернету через телефон

Активация колонки

Далее нужно вернуться обратно в приложение на смартфоне. Теперь, когда «Яндекс с Алисой» настроено и станция включена, можно активировать Алису и произвести их сопряжение:

  1. Приложение запросит данный Wi-Fi сети, нужно будет ввести название и пароль.
  2. Затем нужно положить телефон непосредственно близко от Алисы, нажать кнопку «Проиграть звук».
  3. Смартфон передаст все настройки на станцию при помощи зашифрованного звукового сигнала.
  4. После этого 5-10 минут будет происходить автоматическая активация колонки, её обновление до текущей версии.
  5. По окончании колонка оповестит об успешном завершении настройки звуковым сигналом, начнется режим ожидания.
  6. Станция активирована, можно начать её полноценное использование.

Важно! При активации и передаче зашифрованного звука смартфон должен лежать на расстоянии не более 20 см от устройства и динамиком к ней. Иначе станция может не распознать звуковой сигнал, активировать колонку успешно не получится.

Потенциальные проблемы с активацией

Хотя чаще всего активировать колонку Алису удается с первой попытки и процесс настройки довольно простой, могут возникнуть проблемы с подключением. Наиболее характерные из них перечислим ниже:

  • Забыли включить Wi-Fi на смартфоне – если телефон подключен к мобильной сети, то приложение откроется, но Алису оно не увидит. Поэтому перед настройкой важно проверить подключен ли смартфон к Wi-Fi, есть ли у неё доступ к интернету.
  • Неверная частота сети Wi-FI – Алиса предназначена для работы только в сетях с частотой 2,4 Ггц. Если сеть работает на другой частоте, нужно зайти в настройки Wi-Fi роутера и изменить частотный диапазон на 2,4 Ггц.
  • При необходимости провести настройку заново, следует сделать сброс настроек до заводских:
  1. Отключаем устройство из розетки.
  2. Зажимаем кнопку включения, подключаем провод обратно в сеть.
  3. Держим зажатой кнопку примерно 5 секунд.
  4. После этого отпускаем, станция начнет сброс настроек.
  5. Данный процесс занимает 10 минут. В течение этого времени световой индикатор будет мерцать синим цветом.

Важно! Если активировать устройство не удается, проблемы можно решить, обратившись по телефону в службу поддержки клиентов Яндекса.

Что делать при отсутствии доступа к Wi-Fi

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

  1. Пользователь произносит фразу «Алиса, включи Блютуз».
  2. Колонка перейдет в режим ожидания подключения.
  3. На смартфоне открываем соответствующее меню Bluetooth.
  4. Выбираем устройство «Yandex».
  5. Даем все разрешения и сопрягаемся.
  6. Алиса даст звуковое оповещение о сопряжении.
  7. Теперь можно воспроизводить звук и музыку на Яндекс Станции.
Меткиалисаумный дом

Интерфейс активного обучения (для) схем (и) электроники M1K: [Analog Devices Wiki]

Эта версия (26 ноября 2022 г., 17:34) была одобрена Дугом Мерсером. Ранее одобренная версия (31 октября 2022 г., 20:38) ) доступен.

Содержание

  • Интерфейс активного обучения (для) схем (и) электроники M1K:

    • Цель:

    • Фон:

    • Функции:

    • Требуемые файлы:

      • Окна:

      • Python для Linux и OSX:

      • Ручная установка libsmu / pysmu, необходимая для исходного кода ALICE Desktop Python

      • Ручная установка расширения numpy Python

    • Проезд:

    • Настройка рабочего стола ALICE

    • Использование библиотеки numpy

    • Использование дискретизации эквивалентного времени с ADALM1000

    • Осциллограф / Главное окно:

    • Окно управления AWG:

    • Инструмент для построения координат X-Y:

    • Анализатор спектра/плоттер Боде:

    • Окно омметра постоянного тока:

    • Управление цифровым вводом-выводом Windows:

    • Шаги, выполняемые ALICE Desktop Self Calibration:

    • Дополнительные функции и поддержка съемных плат

      • Многоканальный аналоговый интерфейс для ADALM1000

      • Внешние генераторы функций на базе DDS

      • Внешний последовательный 8-битный ЦАП Pmods

      • Внешние цифровые потенциометры

      • Общий 3-проводной выход SPI:

    • Интерфейс командной строки:

Цель:

Этот документ служит руководством пользователя для интерфейса программного обеспечения ALICE Desktop, написанного для использования с оборудованием комплекта активного обучения ADALM1000. Если вы ищете ALICE для ADALM2000 (M2K), посмотрите здесь.

Фон:

Хотя слово «АЛИСА» можно вывести из названия этого руководства пользователя, на самом деле это намек на фэнтезийные произведения Льюиса Кэрролла: «Приключения Алисы в Стране чудес» 1865 года и его продолжение 1871 года «Зазеркалье» и «Что там нашла Алиса». В этих историях Алиса исследует странный и удивительный мир в кроличьей норе и по ту сторону зеркала (зазеркалья).

Алиса встречает гусеницу, иллюстрация Джона Тенниела из книги Льюиса Кэрролла «Алиса в стране чудес»

Надеемся, что благодаря использованию этого программного обеспечения вместе с оборудованием для активного обучения ADALM1000 учащиеся смогут исследовать странный и удивительный мир схем, электроники и электротехники.

Функции:

Программное обеспечение ALICE Desktop предоставляет следующие функции:

  • Двухканальный осциллограф для отображения во временной области и анализа форм сигналов напряжения и тока.

  • Управление двухканальным генератором сигналов произвольной формы (AWG).

  • X-Y дисплей для отображения захваченных данных напряжения и тока в зависимости от напряжения и тока, а также гистограмм формы сигнала напряжения.

  • Фазовый анализатор, полярное построение амплитуды и фазы напряжения и тока

  • Двухканальный анализатор спектра для отображения в частотной области и анализа форм сигналов напряжения.

  • Плоттер Боде и анализатор цепей со встроенным генератором развертки.

  • Анализатор импеданса для анализа сложных сетей RLC, а также в качестве измерителя RLC и векторного вольтметра.

  • Омметр постоянного тока, измеряет неизвестное сопротивление относительно известного внешнего резистора или известного внутреннего сопротивления 50 Ом.

  • Самокалибровка платы с использованием прецизионного опорного напряжения AD584 2,5 В из комплекта аналоговых деталей ADALP2000

Требуемые файлы:

Программа ALICE Desktop написана на Python, а исходный код совместим с версиями Python 2. 7 или 3.7, установленными на компьютере пользователя. Программа импортирует только модули, которые обычно входят в стандартные установочные пакеты Python.

Windows:

Пользователи Windows, которые не хотят устанавливать Python и другие необходимые программные пакеты, могут установить автономный исполняемый файл отсюда. Это ссылка на пошаговое руководство по установке ALICE в Windows.

Загрузите установщик Windows здесь:

Загрузите установщик Windows Libsmu здесь:

  • Версия 1.0.4 для 64-битных систем 64-битный установщик Libsmu

  • Версия 1.0.4 для 32-битных систем 32-битный установщик Libsmu

Установщик должен включать все необходимые пакеты (python), но не драйверы устройств USB или библиотеку низкоуровневого интерфейса libsmu для ADALM1000. Драйверы можно установить, установив библиотеку Libsmu и щелкнув окно установки драйвера WinUSB при появлении запроса.

Перед подключением ADALM1000 к компьютеру необходимо установить драйверы устройств WinUSB. На 64-битных компьютерах (чаще всего) запустите программу установки libsmu-1.0.4-setup-x64.exe. Нажмите на поле, чтобы установить драйверы устройств WinUSB.

Для 32-разрядных систем запустите программу установки libsmu-1.0.4-setup-x86.exe. Не устанавливайте флажок для установки драйверов устройств WinUSB, это уже было сделано на первом шаге. Если у вас есть версия Python и вы хотите написать свои собственные скрипты для управления ADALM1000, то при желании также установите соответствующие привязки Python.

Запустите программу установки alice-desktop-1.3-x64-setup.exe. Для 32-битных систем запустите программу установки alice-desktop-1.3-x32-setup.exe. Рабочий стол ALICE открывает и сохраняет информацию и данные в различные файлы в каталоге установки. Из-за проблем с правами пользователя при некоторых установках Windows вам может потребоваться установить программное обеспечение в каталог, отличный от обычного по умолчанию «Program Files». C:\ALM Software\ будет хорошим вторым вариантом или дальше в папке «Документы». Программа установки добавляет значки на рабочий стол для каждого инструмента в наборе. Кроме того, в свойствах значков вы можете изменить каталог, в котором запускаются программы.

Настоятельно рекомендуется использовать исполняемый файл Widows, но ALICE Desktop также можно запустить из исходного кода, совместимого с Python 2.X/3.X, со следующими установленными пакетами:

Python 2.7 или Python 3.7
tKinter
числовое расширение пакета numpy
расширение пакета построения графиков matplotlib
libsmu/pysmu

Python для Linux и OSX:

Большинство выпусков операционной системы Linux включают Python, а многие также включают числовые пакеты tKinter и numpy. Пользователи Linux (включая Raspberry Pi) и OSX должны вручную скомпилировать libsmu/pysmu. Для систем Python в Linux, которые не поставляются с предустановленными пакетами, могут понадобиться следующие команды:

  1. sudo apt-get установить python3-pip

  2. sudo python3 - м pip установить numpy

  3. sudo apt-get установить тк

Ручная установка libsmu / pysmu, необходимая для исходного кода ALICE Desktop Python

Для всех операционных систем, отличных от Windows

Если вы собираетесь использовать программное обеспечение ALICE Desktop на компьютере с операционной системой, отличной от Windows, вам потребуется запустить программу из исходного кода Python (совместимого с Python 2 или 3). НЕ ПРОДОЛЖАЙТЕ дальше этого пункта без предварительной установки библиотеки pysmu (и базового пакета libsmu), следуя инструкциям, приведенным в файле readme в репозитории Libsmu GitHub.

Рекомендуемым методом для всех операционных систем, отличных от Windows, является использование Anaconda (Python) и установочных пакетов Conda, как описано здесь: Пакеты Conda

Здесь можно найти примеры тестов Python, которые помогут в тестировании и подтверждении того, что у вас установлена ​​рабочая версия pysmu.

После установки проверенной рабочей версии pysmu исходный код версии 1.3 ALICE Python можно загрузить из репозитория alice GitHub.

В следующем файле также описаны шаги, используемые для установки libsmu с привязками Python и исходным кодом рабочего стола ALICE в Ubuntu версии 18.04 Linux с использованием вышеуказанных пакетов из репозитория libsmu. Для операционных систем, отличных от Windows, рекомендуется использовать пакеты Conda для установки libsmu и привязок pysmu в Python.

Ручная установка расширения numpy Python

Для пользователей Linux numpy уже может быть частью вашего дистрибутива Python 2.7. В противном случае вы можете загрузить и установить numpy через программное обеспечение/менеджер пакетов в вашей конкретной версии Linux.

Для пользователей Windows есть бинарные установщики Windows, которые можно загрузить с сайта SourceForge. Последняя версия может иметь или не иметь двоичный файл Windows, поэтому вам может потребоваться просмотреть один или два выпуска версии, чтобы найти двоичный файл Windows. На момент написания этой статьи самая новая версия с двоичным файлом — numpy-1.10.2-win32-superpack-python2.7.exe 2015-12-14. Обязательно скачайте версию для Python 2.7! Обратите внимание, что разработчики создали бинарный файл Windows только для 32-битного Python 2.7. Пользователи, более знакомые со сборкой из исходного кода, могут загрузить исходный архив и использовать сценарии установки для установки. ( build ) numpy для их 64-битной версии Python.

Схема проезда:

Предполагается, что читатель немного знаком с функциями и возможностями аппаратного обеспечения ADALM1000. Дополнительные сведения об аппаратном обеспечении ADALM1000 см. в следующих документах:

Обзор ADALM1000
Аппаратное обеспечение ADALM1000
Проектная документация ADALM1000
Что такое блок измерения источника или SMU?
Чем отличается анализатор кривых от аналогового анализатора подписи и SMU?
Измерение тока с помощью ADALM1000
Дополнительные платы ADALM1000
ADALM1000 Аналоговые входы
ADALM1000 Аналоговые мультиплексоры
ADALM1000 Цифровые выходы
ADALM1000 Входные буферы на полевых транзисторах с малой емкостью

Исполняемый установщик Windows, помимо основной программы ALICE Desktop, включает в себя следующие инструменты измерения DC:

  • Краткое руководство по вольтметру постоянного тока (volt-meter-tool-1.2.exe)

  • Краткое руководство по омметру постоянного тока (ohm-meter-vdiv-1. 2.exe)

  • Руководство по быстрому запуску DC Meter-Source (dc-meter-source-tool-1.3.exe)

  • Средство профилирования питания постоянного тока (источник Python)

  • Инструмент для построения ленточных диаграмм постоянного тока (источник Python)

  • Средство регистрации данных DC (источник Python)

Несколько замечаний по номенклатуре, используемой в этом документе:
CA- V относится к сигналу напряжения канала A
CA-I относится к сигналу тока канала A
CB- V относится к сигналу напряжения канала B
CB- I относится к текущему сигналу канала B.

Настройка рабочего стола ALICE

Существует множество аспектов ALICE, которые можно настроить, и дополнительных функций, которые можно включить, внеся изменения в файл alice_init.ini. Вещи, которые можно настроить/изменить, описаны в Руководстве для опытных пользователей ALICE.

Использование библиотеки numpy

Алиса включает числовую библиотеку Python nunpy и множество других функций, которые можно использовать вручную. Как это сделать, описано в Руководстве для опытных пользователей ALICE.

Использование дискретизации эквивалентного времени с ADALM1000

Одной из расширенных функций, которые можно включить в ALICE, является выборка эквивалентного времени, которая для определенных классов периодических сигналов может увеличить кажущуюся скорость выборки до MSPS . Как использовать ETS, описано в Руководстве пользователя ALICE Equivalent Time Sampling.

Осциллограф / Главное окно:

Перед запуском программы убедитесь, что плата ALM1000 подключена к порту USB . После запуска программы должно появиться главное окно, как показано на рисунке 1. Это главное окно рабочего стола, которое служит окном инструментов осциллографа, а также элементами управления для открытия других окон дисплея и некоторых общих функций управления. Он подразделяется на 4 раздела.

Рис. 1. Главное окно ALICE Desktop

Полную информацию можно найти в Руководстве пользователя осциллографа.

Окно управления AWG:

Руководство по разделу AWG.

Инструмент для построения координат X-Y:

При нажатии кнопки X-Y Plot Window в главном окне появится окно отображения X-Y.

Анализатор спектра/плоттер Боде:

Руководство по разделам анализатора спектра / графика Боде / анализатора импеданса.

Окно омметра постоянного тока:

Виртуальный прибор DC Ohmmeter используется для измерения неизвестного сопротивления.

Управление цифровым вводом-выводом Windows:

Аппаратное обеспечение ALM1000 имеет четыре цифровых входа/выхода CMOS 3,3 В. Четыре контакта ввода/вывода общего назначения, а также заземление и источник питания 3,3 В расположены на разъеме цифрового порта, как показано на рис. 27.

Рис. 27 Разъем цифрового ввода/вывода

Часть схемы ALM1000 версии D показана на рисунке 28D, а схема версии F показана на рисунке 28F. Как видно, каждый из четырех контактов PIO общего назначения (разъем P3) подключен к резисторам 220 Ом и 470 Ом в версии D и версии F 4,7K резисторами вместо резисторов 470 Ом. Резисторы 220 Ом подключаются к контактам 0-3 порта А, а резисторы 470 Ом / 4,7 кОм подключаются к контактам 4-7 порта А. Эта конфигурация с двумя выводами цифрового порта, подключенными через два разных последовательных резистора, уникальна и обычно не типична для цифровых выводов в других небольших портативных устройствах 9.0203 Оборудование на базе USB , такое как модуль Analog Discovery.

Рисунок 28D Схема ввода/вывода цифрового интерфейса ALM1000 rev D

Рис. 28F Схема ввода/вывода цифрового интерфейса ALM1000 rev F

Состоянием выводов порта А можно управлять с помощью простого цифрового интерфейса управления, показанного на рис. 29. В настоящее время поддерживается только статическая функциональность высокого/низкого уровня. Предусмотрено восемь рядов селекторов, по одному на каждый вывод микроконтроллера для порта A (PA0-PA7). Каждый контакт порта может быть установлен либо в низкий логический уровень, 0, либо в высокоимпедансное или плавающее состояние, Z, либо в высокий логический уровень, 1. В высоком импедансном или плавающем состоянии этот контакт может использоваться как логический вход.

Рисунок 29, Окно управления цифровым вводом/выводом

Использование этих контактов для целей, отличных от цифровых

Эту конфигурацию с двумя драйверами цифрового вывода, подключенными к одному контакту разъема через два разных последовательных резистора, можно рассматривать в другом свете. Мы могли бы рассматривать выходной разъем CMOS вывода микроконтроллера как трехпозиционный однополюсный переключатель, который может подключаться к земле или источнику питания 3,3 В или к разомкнутой цепи, как показано на рис. 30. Это скорее аналоговое представление схемы. Глядя на схему таким образом, возможно, ее можно частично использовать для обучения и изучения концепций в сетях резисторов постоянного тока, таких как эквивалентные схемы Thevenin и Norton, последовательно-параллельные резисторы, KVL, KCL, делители напряжения и узловой анализ и т. д.

Рисунок 30. Аналоговое представление схемы на основе коммутатора.

Существует девять возможных комбинаций переключателей, которые приводят к 8 эквивалентным схемам Thevenin, показанным на рисунке 31, причем девятая, конечно же, представляет собой разомкнутую цепь. Здесь важно отметить, что значения сопротивления и напряжения приведены для идеальных номинальных условий, а фактические значения могут заметно отличаться. Также предполагается, что сопротивление переключателей MOS FET в открытом состоянии равно нулю, что на самом деле никогда не бывает так.

Рис. 31, 8 Эквивалентные схемы

Первые четыре случая очевидны. Следующие два предназначены для случая, когда резистор 220 Ом подключен параллельно резистору 470 Ом. Последние два предназначены для случая, когда резистор 220 Ом подключен к земле, а резистор 470 Ом подключен к 3,3 В и наоборот.

9-уровневый ЦАП можно создать на каждом выходном контакте, подключив внешний резистивный делитель, R1, R2, как показано на рисунке 32. Использование двух резисторов по 1 кОм, как показано, эффективно обеспечивает сопротивление 500 Ом при напряжении 3,3/2 (1,65) В на входе. один из выходов разъема PIO. Это эффективное сопротивление 1,65 В и переключаемые эквивалентные схемы на рис. 31 приводят к 9 различным выходным напряжениям, показанным на рис. 32. Конечно, другие значения для R1 и R2 могут использоваться для получения других диапазонов выходного напряжения.

Рисунок 32, Девятиуровневое окно интерфейса «DAC»

Простое замыкание двух контактов PIO дает 9 х 9 или 81 возможную комбинацию. Многие из них избыточны, а некоторые дают одинаковое напряжение, но с разными значениями сопротивления источника. Замыкание всех четырех контактов дает 6561 возможную комбинацию без использования внешних резисторов. Ограничено только вашим воображением и намного больше, чем может быть перечислено в этом документе.

Кроме того, когда одно или другое цифровое окно открыто, состояние PIO 0, PIO 1, PIO, 2 и PIO 3 слева направо отображается в графической области осциллографа и обновляется один раз при каждом обновлении дисплея аналогового осциллографа. .

Шаги, выполняемые ALICE Desktop Self Calibration:

ALICE Desktop может выполнять последовательность самокалибровки.

Дополнительные функции и поддержка съемных плат

ALICE Desk-Top предоставляет расширенные функции программных интерфейсов и внешние сменные платы, которые расширяют функциональность базового программного и аппаратного обеспечения. В настоящее время поддерживается множество типов внешних плат. Внешние аналоговые мультиплексоры для увеличения количества аналоговых входных каналов. Внешние генераторы функций на основе DDS, такие как AD9MiniGen на базе 837 от SparkFun. Последовательный 12-битный ЦАП AD5626 из комплекта деталей ADALP2000. Внешние последовательные 8-битные ЦАП, такие как PmodDA1 на базе AD7303 от Digilent. Внешние цифровые потенциометры, такие как одинарное, двойное или счетверенное семейство AD840X или PmodDPOT на базе AD5160 от Digilent. Общий 3-проводной последовательный интерфейс вывода SPI .

Программные интерфейсы для них можно включить или отключить, установив для следующих переменных значение 1 или 0 в файле alice_init.ini. Дополнительные сведения см. в Руководстве расширенного пользователя ALICE.

глобальный EnableCommandInterface; EnableCommandInterface = 0
глобальный EnableMuxMode; EnableMuxMode = 0
глобальный EnableMinigenMode; EnableMinigenMode = 0
глобальный EnablePIODACMode; EnablePIODACMode = 0
глобальный EnablePmodDA1Mode; EnablePmodDA1Mode = 0
глобальный EnableDigPotMode; Енабледигпотмоде = 0 глобальный EnableGenericSerialMode; EnableGenericSerialMode = 0
глобальный EnableAD5626SerialMode; EnableAD5626SerialMode = 0
глобальный EnableDigitalFilter; Включить цифровой фильтр = 0
глобальный EnableMeasureScreen; EnableMeasureScreen = 0
глобальный EnableETSScreen; ВключитьETSSreen = 0

Все эти необязательные дополнительные функции по умолчанию имеют значение 0 в файле alice_init.ini, поставляемом с установщиком Windows. Когда эти переменные установлены на 1, кнопка для открытия соответствующего окна управления появится в правой части главного окна ALICE.

Многоканальный аналоговый интерфейс для ADALM1000

Два аналоговых входных канала ADALM1000 обеспечивают высокий входной импеданс и широкий динамический диапазон, что очень полезно для многих измерений, которые пользователь может выполнять в лаборатории. Однако аналоговых входов всего два. Часто в исследуемой цепи имеется более двух сигналов, которые пользователь хотел бы контролировать. Или может быть ряд датчиков с низкой пропускной способностью, таких как температура окружающей среды или уровень освещенности в помещении, которые необходимо измерять или контролировать в течение длительного времени при сборе экспериментальных данных. В качестве решения этой проблемы ALICE desktop предоставляет необходимый программный интерфейс для управления внешним многоканальным аналоговым мультиплексором.

Рис. 35. Универсальный аналоговый мультиплексор

Эти две коммутационные платы от SparkFun на основе MUX 74HC4067 16:1 и MUX 74HC4051 8:1 представляют собой готовое готовое оборудование. Файлы дизайна для других плат мультиплексора, совместимых с M1k, можно найти в списке дополнительных плат M1k.

Направляющие

  • Для блока переключателей LTC1043

  • Для аналогового мультиплексора CD4051 8:1

  • Для двойного аналогового мультиплексора CD4052 4:1

  • Для тройного аналогового мультиплексора CD4053 2:1

Пример схемы аналогового мультиплексора

Для доступа к элементам управления внешним аналоговым мультиплексором в ALICE настройте эту строку в файле alice_init.ini:

глобальный EnableMuxMode; ВключитьMuxMode = 1

Окно управления аналоговым мультиплексором показано на рисунке 36. Элементы управления напряжением и током CB в главном окне осциллографа больше не работают, когда это окно открыто, и заменены четырьмя новыми наборами элементов управления напряжением. Флажки выбирают, какой из четырех входных каналов мультиплексора будет отображаться. Флажок Mux-Enb устанавливает для PIO-2 низкий уровень (если не установлен) или высокий уровень (если установлен) для мультиплексоров, таких как CD4052 с включенными низкими входами или ADG609.с включением высоких входов.

Рисунок 36. Окно управления аналоговым мультиплексором

Переменный режим развертки

Аналоговый интерфейс Mux в настольной системе ALICE использует метод, распространенный в аналоговых осциллографах с ЭЛТ (с одним электронным лучом), где несколько входных каналов переключаются на схемы отклонения луча при чередующихся развертках. Этот трюк требует периодических сигналов и того, чтобы каждая развертка «запускалась» или синхронизировалась с одним и тем же входным сигналом. В этом случае запускающим сигналом будет канал А, который не мультиплексирован. Это может быть либо выход генератора AWG канала A, либо вход внешнего сигнала в канал A в режиме Hi-Z. Поскольку предполагается, что MUX подключен к каналу B, функция выхода AWG для этого канала установлена ​​в режим Hi-Z, а также, поскольку канал B всегда является входом напряжения, отображение текущей формы сигнала для этого канала также отключено. В качестве примера обратите внимание на снимок экрана на рисунке 37.

Режим измельчения

Второй режим интерфейса Mux на рабочем столе ALICE использует другой метод, распространенный в аналоговых ЭЛТ-осциллографах, где два входных сигнала очень быстро переключаются или обрезаются в схемах отклонения луча. В случае M1k у нас есть система дискретизации с частотой 100 KSPS, и мы можем использовать прямоугольную волну с выхода канала A AWG для управления входом управления мультиплексором с частотой дискретизации 1/4 системы, или 25 KSPS. Таким образом, каждый вход мультиплексора «получает» две выборки. Программное обеспечение игнорирует первую из двух выборок, чтобы учесть время установления, и использует вторую выборку в качестве данных. Программное обеспечение также повышает дискретизацию данных 25 KSPS до 100 KSPS с помощью 4-кратного цифрового интерполяционного фильтра. Программное обеспечение автоматически настраивает параметры канала A AWG. После установки их нельзя изменять при использовании режима Chop Sweep.

Рис. 37. Четырехканальный мультиплексор рабочего стола ALICE.

Одной из важных особенностей программы является то, что импульс запуска синхронизации или развертки выводится на цифровой выходной контакт PIO 3 непосредственно перед началом каждой аналоговой развертки. Синхроимпульс можно установить либо на высокий, либо на низкий импульс с помощью селектора рядом со значком в форме импульса. Использование этого импульса «сброса» было бы необходимо всякий раз, когда функция чередующейся развертки используется для наблюдения за схемой, которая содержит «состояние», например, цифровой счетчик или конечный автомат.

Внешние генераторы функций на базе DDS

ALM1000 имеет 4 цифровых входа/выхода общего назначения, которые можно использовать в качестве последовательного порта ( SPI ). Эти контакты используются для интерфейса с генераторами сигналов прямого цифрового синтеза (DDS), такими как AD9837 и AD9833. Эти генераторы DDS способны генерировать выходные сигналы синусоидальной, треугольной и прямоугольной формы. SparkFun предлагает коммутационную плату на базе AD9837 DDS под названием MiniGen (29,95 долларов США).

На рисунке 33 мы видим, что подключить плату MiniGen к цифровому разъему на ALM1000 довольно просто. Если 6-контактный прямоугольный штекерный разъем установлен, как показано, FSYNC, SDATA и 9Контакты 0523 SCLK подключаются к контактам PIO 0, PIO 1 и PIO 3 соответственно. Остальные три штыря заголовка являются открытыми соединениями на плате MiniGen, а земля и питание GND. Контакт VIN может быть подключен к 3,3 В, а GND к GND с помощью перемычек. Перемычку припоя, которая закорачивает LDO на плате, для питания платы напрямую от 3,3 В, также необходимо припаять, как показано на рисунке. Также необходимо установить двухштырьковый разъем под прямым углом к ​​точкам подключения аналогового выхода.

Рис. 33 Адаптация AD9837 MiniGen к ALM1000

Окно управления MiniGen, рис. 34, позволяет выбрать четыре возможные формы сигнала. Основная тактовая частота может быть установлена, плата поставляется с кварцевым генератором 16 МГц . И, конечно, выходная частота может быть установлена.

Рис. 34. Элементы управления генератора функций AD983X DDS

Плата MiniGen выдает сигнал с фиксированной амплитудой 1 В пик-пик с центром на входе / 2, что составляет примерно 1,65·9.0314 V в данном случае.

AD9833 — это микросхема генератора сигналов DDS, аналогичная AD9837. В техническом описании для AD9833 указано, что формы сигналов последовательного интерфейса такие же, как и для AD9837, и конфигурация регистров управления, частоты и фазы такая же, поэтому интерфейс ALICE Desktop будет работать для обоих устройств, подключив какой ввод-вывод. контакты сопоставляются с FSYNC, SDATA и SCLK по мере необходимости.

Использование MiniGen с плоттером Боде

Начиная с версии ALICE 1. 1 Desktop от 19.06.2017 можно использовать MiniGen в качестве источника сигнала развертки для плоттера Боде. Если элементы управления MiniGen открыты до открытия окна графика Боде, в разделе «Генератор развертки» появится третья опция. MiniGen имеет фиксированную амплитуду или 1 В 90 204 пик-пик с центром на половине источника питания, что обычно составляет 3,3 90 314 В 90 204 . MiniGen способен генерировать гораздо более высокие частоты, чем встроенные источники AWG. Это позволяет проводить развертку чуть ниже предела 50 кГц для 100 KSPS.

Внешний последовательный 8-битный ЦАП Pmods

Контакты цифрового ввода/вывода могут взаимодействовать с 4-канальным модулем ЦАП PmodDA1, продаваемым через Digilent и других дистрибьюторов, таких как Mouser.

Рисунок 35, PmodDA1

PmodDA1 имеет два 8-битных ЦАП AD7303 с двойным выходным напряжением, как показано на блок-схеме на рисунке 36.

Рисунок 36, блок-схема PmodDA1.

Модуль имеет 6-контактный штекерный разъем, который подключается непосредственно к цифровому порту на ADALM1000. Поскольку «верхняя» сторона компонента ALM1000 фактически обращена вниз, PmodDA1 также необходимо подключать «верхней» стороной компонента вниз. Внимательно отметьте метки контактов на обеих платах перед подключением Pmod. 6-контактный разъем модуля совпадает с контактами цифрового разъема ALM1000, а все четыре контакта ввода-вывода общего назначения используются следующим образом. PIO 0 подключается к входу SYNC на обоих ЦАП. PIO 1 подключается к входу данных на первом AD7303. PIO 2 подключается к входу данных на втором AD7303, а PIO 3 подключается к SCLK последовательный тактовый вход на обоих ЦАП.

Внешний доступ к эталонному входному напряжению на ЦАП отсутствует, поэтому они обычно должны быть настроены на использование VDD/2 в качестве эталона. В этом случае VDD подключается к напряжению 3,3 В, подаваемому на разъем цифрового порта. Диапазон выходного напряжения для всех четырех выходных каналов будет от 0 до 3,3 В .

ЦАП AD7303 также доступны в 8-выводных корпусах PDIP и могут использоваться в беспаечных макетных платах с другими компонентами проекта схемы.

Рисунок 37, Окно управления PmodDA1

Элементы управления для четырех каналов ЦАП PmodDA1 показаны на рис. 37. Введите желаемое напряжение постоянного тока от 0 до 3,3 В (меньше одного LSB ) и нажмите UpDate, чтобы отправить новые значения на ЦАП.

Внешние цифровые потенциометры

Цифровые потенциометры AD8402 dual 10 KΩ и AD8403 quad 10 KΩ имеют 8-битное разрешение и доступны в корпусах PDIP, которые хорошо работают на макетных платах без пайки. Как подключить AD8402 к ALM1000 показано на рисунке 39.. Одиночный 8-битный цифровой потенциометр 10 кОм AD5160 на базе PmodDPOT, рис. 38, также совместим с тем же 6-контактным штекерным разъемом, который подключается непосредственно к цифровому порту на ADALM1000. Из-за того, что «верхняя» сторона компонента ALM1000 фактически обращена вниз, PmodDPOT также необходимо подключать «верхней» стороной компонента вниз. Внимательно отметьте метки контактов на обеих платах перед подключением Pmod.

Рисунок 38, PmodDPOT

Соединения для двойного потенциометра AD8402 показаны на рис. 39.. Соединения для одинарного AD8400 и счетверенного AD8403 аналогичны.

Рисунок 39, соединения AD8402

Рисунок 40, Окно управления цифровым потенциометром

Окно управления цифровым потенциометром имеет флажки для выбора, какой из четырех потенциометров AD8403 будет отправлять данные. Каждый потенциометр имеет ползунок для управления его значением от 0 до 255. С помощью переключателя можно выбрать семейство AD840X, которое отправляет 10-битные данные (8-битное значение + 2-битный адрес), и одиночный потенциометр AD5160, который отправляет 8-битные данные.

Общий 3-проводной выход SPI:

Контакты цифрового ввода/вывода могут выводить последовательные данные на стандартные 3-проводные устройства последовательного ввода SPI . Предоставленный интерфейс позволяет пользователю настроить любой из 4 цифровых контактов PI/O (0–3) в качестве выхода SCLK , SData или Latch (иногда называемого CS или SYNC). Пользователь может установить количество битов, отправляемых при каждой цифровой записи. Отправляемое слово данных может быть введено либо в десятичной (целочисленной) форме, либо в шестнадцатеричном формате с использованием формата 0x00. Чувство «отдыха», , т.е. , также можно установить уровень между записями выхода защелки (переключатель фазы защелки). Некоторые последовательные устройства работают по переднему фронту сигнала Latch (CS, SYNC) или по заднему фронту. Можно выбрать порядок, в котором отправляются последовательные биты: сначала LSB или MSB . Текущее значение данных отправляется или записывается каждый раз при нажатии кнопки «Отправить».

Рис. 41. Экран универсального последовательного интерфейса

Интерфейс командной строки:

ALICE Desktop предоставляет простой интерфейс командной строки для более продвинутых пользователей, которым нужен полный доступ к захваченным данным и внутренней работе программы, особенно к библиотеке математических функций массива Numpy. По умолчанию кнопка активации этого интерфейса не включена в главное окно ALICE. Чтобы включить кнопку активации, добавьте следующую строку в файл alice_init.inc:

глобальный EnableCommandInterface; ВключитьКоммандИнтерфейс = 1

Интерфейс не сложен в использовании, если вы относительно знакомы с синтаксисом Python и структурой переменных ALICE. Чтобы выполнить больше, чем функцию в строке, используйте ; для разделения команд в одной строке. Чтобы выполнить командную строку, нажмите клавишу или или нажмите кнопку «Выполнить». Последняя успешно выполненная строка отображается чуть ниже, где написано «Последняя команда». Последовательность команд можно ввести в обычный текстовый файл и запустить как сценарий, нажав кнопку «Выполнить сценарий».

Рис. 43 Командный интерфейс ALICE

Более подробную информацию о внутренней работе ALICE, именах переменных и массивов, а также библиотеке функций Numpy можно найти в Руководстве расширенного пользователя ALICE.

Одна полезная функция, которая может пригодиться, — это функция Numpy для записи содержимого массива в текстовый файл. Например, чтобы сохранить VBuffA (буфер сигнала напряжения канала A) в файл .csv, введите:

numpy.savetxt («my_data.csv», VBuffA, разделитель = «», fmt = '% 2.4f')

Где «my_data.csv» — это имя целевого файла, VBuffA — это, конечно, массив данных для сохранения, delimiter=«,» указывает функции использовать , чтобы разделить столбцы (не будет нескольких столбцов, так как большинство массивы ALICE являются одномерными), а fmt='%2.4f' устанавливает формат в 4 десятичных знака.

Для дальнейшего чтения:

Вернуться к оглавлению.

университет/инструменты/m1k/alice/desktop-users-guide.txt · Последнее изменение: 26 ноября 2022 г., 17:34, автор: Doug Mercer. в DataFrame можно создать объект Row, используя именованные аргументы, или создать собственный класс, подобный Row. В этой статье я объясню, как использовать класс Row в RDD, DataFrame и его функциях.

Прежде чем мы начнем использовать его в RDD и DataFrame, давайте разберемся с некоторыми основами класса Row.

Статья по теме: Использование и функции класса столбцов PySpark с примерами

Ключевые моменты класса строк:

  • Ранее в Spark 3.0 при использовании класса строк с именованными аргументами поля сортировались по имени.
  • Начиная с версии 3.0, строки, созданные из именованных аргументов, не сортируются в алфавитном порядке, вместо этого они будут упорядочены в введенной позиции.
  • Чтобы включить сортировку по именам, установите переменную среды PYSPARK_ROW_FIELD_SORTING_ENABLED 9от 0668 до истинное .
  • Класс Row также предоставляет способ создания столбца структурного типа.

1. Создание объекта-строки

Класс Row расширяет кортеж, поэтому он принимает переменное количество аргументов, Row() используется для создания объекта-строки. После создания объекта строки мы можем получить данные из строки, используя индекс, аналогичный кортежу.

 из строки импорта pyspark.sql строка = строка ("Джеймс", 40) печать (строка [0] +", "+ строка (строка [1])) 

Это выводит Джеймс,40 . В качестве альтернативы вы также можете писать с именованными аргументами. Преимущества именованного аргумента в том, что вы можете получить доступ с именем поля row.name . Ниже пример печати «Алиса».

 строка = строка (имя = "Алиса", возраст = 11) печать (строка.имя) 

2. Создать пользовательский класс из строки

Мы также можем создать класс, подобный строке, например «Человек», и использовать его аналогично объекту строки. Это было бы полезно, если вы хотите создать объект в реальном времени и указать его свойства. В приведенном ниже примере мы создали класс Person и использовали аналогичный Row.

 Человек = Строка("имя", "возраст") p1=человек("Джеймс", 40) p2=человек("Алиса", 35) печать (p1.имя +","+p2.имя) 

Это выводит James, Alice

3. Использование класса Row в PySpark RDD

Мы можем использовать класс Row в PySpark RDD. Когда вы используете Row для создания RDD, после сбора данных вы получите результат обратно в Row.

 из pyspark.sql импортировать SparkSession, Row искра = SparkSession.builder.appName('SparkByExamples.com').getOrCreate() data = [Row(name="James,Smith",lang=["Java","Scala","C++"],state="CA"), Строка (имя = "Майкл, Роуз,", lang = ["Искра", "Java", "C++"], состояние = "Нью-Джерси"), Строка (имя = "Роберт, Уильямс", lang = ["CSharp", "VB"], состояние = "NV")] rdd=spark.sparkContext.parallelize(данные) печать (рдд.собрать()) 

Это дает ниже производительности.

 [Row(name='Джеймс,Смит', lang=['Java', 'Scala', 'C++'], state='CA'), Row(name='Майкл,Роуз,', lang=[' Spark', 'Java', 'C++'], state='NJ'), Row(name='Robert,Williams', lang=['CSharp', 'VB'], state='NV')] 

Теперь давайте соберем данные и получим доступ к данным, используя их свойства.

 collData=rdd.collect() для строки в collData: print(row.name + "," +str(row.lang)) 

Результат ниже.

 Джеймс, Смит, ['Java', 'Scala', 'C++'] Майкл, Роуз, ['Spark', 'Java', 'C++'] Роберт, Уильямс, ['CSharp', 'VB'] 

В качестве альтернативы вы также можете создать ряд, подобный классу «Человек»

 Человек=Строка("имя","язык","штат") data = [Person("Джеймс,Смит",["Java","Scala","C++","CA"), Человек("Майкл,Роуз,",["Искра","Java","C++","Нью-Джерси"), Человек("Роберт,Уильямс",["CSharp","VB"],"NV")] 

4. Использование класса Row в PySpark DataFrame

Точно так же класс Row также можно использовать с PySpark DataFrame. По умолчанию данные в DataFrame представляются как Row. Для демонстрации я буду использовать те же данные, которые были созданы для RDD.

Обратите внимание, что в строке DataFrame не разрешается пропускать именованный аргумент, чтобы показать, что значение равно None или отсутствует. В этом случае это должно быть явно установлено на None.

 df=spark.createDataFrame(данные) df.printSchema() df.show () 

Результат ниже. Обратите внимание, что DataFrame может брать имена столбцов из объекта Row.

 корень |-- имя: строка (nullable = true) |-- язык: массив (nullable = true) | |-- элемент: строка (содержитNull = true) |-- состояние: строка (nullable = true) +--+------------------+-----+ | имя| язык|состояние| +--+------------------+-----+ | Джеймс,Смит|[Java, Scala, C++]| Калифорния| | Майкл,Роуз,|[Spark, Java, C++]| Нью-Джерси | |Роберт,Уильямс| [CSharp, В.Б.]| НВ| +--+------------------+-----+ 

Вы также можете изменить имена столбцов с помощью функции toDF()

 столбцы = ["имя","languagesAtSchool","currentState"] df=spark. createDataFrame(данные).toDF(*столбцы) df.printSchema() 

Результат ниже: обратите внимание на имя столбца «languagesAtSchool» из предыдущего примера.

 корень |-- имя: строка (nullable = true) |-- languagesAtSchool: массив (nullable = true) | |-- элемент: строка (содержитNull = true) |-- currentState: строка (nullable = true) 

5. Создание вложенной структуры с использованием класса Row

В приведенном ниже примере показан способ создания типа структуры с использованием класса Row. Кроме того, вы также можете создать тип структуры, используя By Providing Schema, используя PySpark StructType и StructFields

. #Создать DataFrame со структурой, используя класс Row из строки импорта pyspark.sql данные = [Строка (имя = "Джеймс", реквизит = Строка (волосы = "черный", глаз = "синий")), Строка (имя = "Энн", реквизит = Строка (волосы = "серый", глаз = "черный"))] df=spark.createDataFrame(данные) df.printSchema() 

Выходы ниже схемы

 корень |-- имя: строка (nullable = true) |-- prop: struct (nullable = true) | |-- волосы: строка (nullable = true) | |-- глаз: строка (nullable = true) 

6.

Полный пример использования PySpark Row в RDD и DataFrame

Ниже приведен полный пример для справки.

 из pyspark.sql импортировать SparkSession, Row строка = строка ("Джеймс", 40) печать (строка [0] +", "+ строка (строка [1])) row2 = Строка (имя = "Алиса", возраст = 11) печать (строка2.имя) Человек = Строка("имя", "возраст") p1=человек("Джеймс", 40) p2=человек("Алиса", 35) печать (p1.имя +","+p2.имя) Пример #PySpark искра = SparkSession.builder.appName('SparkByExamples.com').getOrCreate() data = [Row(name="James,Smith",lang=["Java","Scala","C++"],state="CA"), Строка (имя = "Майкл, Роуз,", lang = ["Искра", "Java", "C++"], состояние = "Нью-Джерси"), Строка (имя = "Роберт, Уильямс", lang = ["CSharp", "VB"], состояние = "NV")] #RDD Пример 1 rdd=spark.sparkContext.parallelize(данные) collData=rdd.collect() печать (сбор данных) для строки в collData: print(row.name + "," +str(row.lang)) # СДР Пример 2 Человек=Строка("имя","язык","штат") data = [Person("Джеймс,Смит",["Java","Scala","C++","CA"), Человек("Майкл,Роуз,",["Искра","Java","C++","Нью-Джерси"), Человек("Роберт,Уильямс",["CSharp","VB"],"NV")] rdd=spark. 

Learn more