Инфоурок Другое СтатьиАвтоматическое устройство для подачи школьных звонков с использованием макросов, интегрированных в Microsoft Office 2007

Автоматическое устройство для подачи школьных звонков с использованием макросов, интегрированных в Microsoft Office 2007

Скачать материал

Автоматическое устройство

для  подачи школьных звонков с использованием макросов, интегрированных в  Microsoft Office 2007

 

Содержание:

1.                  Вводная часть

2.                  Основная часть

3.                  Заключение

1. Вводная часть.

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

Нам хотелось исследовать возможности использования макросов, интегрированных в Microsoft Office 2007 c целью получения устройства для практического применения, в нашем случае устройства для подачи школьных звонков, хотя в реальности сама методика использования макросов  совместно с традиционным использование возможностей Microsoft Office Excel 2007 позволяет значительно расширить круг устройств,  для конструирования которых применяется данная методика.

           В виду «древности» этого порта в настоящее время он уже в основном не используется в различных приложениях и в основном не раскрываются его возможности в применении тех или иных устройствах.

          Исходя из этого, возможности этого  порта (LPT) уже применяются редко, но он появился и применялся в первых компьютерах, его параметры были зашиты в БИОС, и к нему можно обращаться напрямую в программах, что  значительно упрощает применение этого порта в различных устройствах.       

2. Вводная часть.

Устройство для автоматической подачи звонков в школе.

 

 

excel-0-00-01-913.png

Данный  проект «Устройство для автоматической подачи звонков в школе»  использует ресурсы электронных таблиц, но являются нетрадиционными для этого приложения, т.е. в данном проекте используются макросы интегрированные в Мicrosoft Office.

Немного об интерпретаторе языка VBA интегрированный в Мicrosoft Office 2007, основы работы с ними:

1.Разрешить исполнение макросов:

excel-0-00-13-132.png    excel-0-00-21-206.png

 

1.Кнопка «Оffice» и выбираем «Параметры Ехсел»

   2. «Центр управления безопасностью»

 

excel-0-00-28-420.png excel-0-00-36-963.png

«Параметры центра упраления безопасностью»

Далее «Параметры макросов» и «Включить все макросы»

 Работа с макросами:

Ctrl+Break – прервать исполнение макроса.

Alt+F11 – переключение в редактор VBA и обратно.

В редакторе VBA:

Ctrl+R – вызов окна проводника проекта (если не отображается);

F7 – вызов окна кода (если не отображается).

На панели инструментов:

http://www.rosinka.vrn.ru/dinex/images/image005.gif  (Run) – выполнить макрос;

http://www.rosinka.vrn.ru/dinex/images/img4_1.png  (Break) – прервать исполнение макроса;

http://www.rosinka.vrn.ru/dinex/images/image004.gif  (Reset) – восстановить начальное состояние после прерывания.

В окне кода:

' (апостроф) – часть строки после апострофа интерпретатором не читается (используется для отмены действия операторов и комментариев).

 

Основа проекта –часы показывающие текущее системное время.

excel-0-00-45-115.png

 

  Для начала объединим ячейки диапазона B8:K32 и в процедуре Clock() отредактируем строку, чтобы получилось:

Range("B8") = Now (В ячейку В8 заносятся показания текущего времени с точностью до единиц минут, что определяется форматом ячейки – Время: 13:30), т.е.

в этом диапазоне установим формат ячейки:

– Время: 13:30;

– Выравнивание:

• по горизонтали: по правому краю;

• по вертикали: по центру;

– Шрифт:

• начертание: полужирный;

• размер: 170.

excel-0-00-52-564.png

   Для отдельного отображения секунд объединим ячейки  диапазона L14:N22, введем в него формулу:

=ТЕКСТ(СЕКУНДЫ(ТДАТА());"00") – вырезаются секунды из  показания часов

Здесь выберем формат:

– Общий;

– Выравнивание:

• по левому краю;

– Шрифт:

• размер: 100.

excel-0-01-11-883.png    excel-0-01-19-918.png

Для установки времени звонка будильника создадим с помощью панели «Формы» два счетчика для выбора нужных часа и минут,

 

Настроим необходимые ограничения и свяжем их с ячейками G36 и I36.

 

excel-0-01-39-705.png   excel-0-01-28-570.png

В ячейку I35 введем формулу =ВРЕМЯ(G36;I36;) для перевода выбранного времени в формат представления времени в Excel

Левее в H35 запишем =ВРЕМЯ(ЧАС(B8);МИНУТЫ(B8);

СЕКУНДЫ(B8)) с аналогичной целью.

 

 

 

В ячейке G35 это значение мы будем сравнивать с выбранным с помощью формулы: =ЕСЛИ(H35=I35;1;0), -  сравниваются показания будильника и текущего времени. При выполнения условия значение  ячейки G35 =1, выполняется условие для подачи звонка.

excel-0-01-00-643.png

 

Отведем для расписания уроков диапазон от P8-P20 –начало и   Q8-Q20 –конец урока. В эти ячейки будем вводить время звонков в принятом формате времени, отделяя двоеточием часы от минут и секунд. Условие в ячейке G35 придется преобразовать к виду:

excel-0-01-47-702.png

G35=ЕСЛИ(ИЛИ(H35=P8;H35=P10;H35=P12;H35=P14;H35=P16;H35=P18;H35=P20;H35=Q8;H35=Q10;H35=Q12;H35=Q14;H35=Q16;H35=Q18;H35=Q20;H35=I35;B35=B36);1;0) , т.е. содержимое ячейки Н35 сравнивается со значениями ячеек Р8-Р20 и Q8-Q20, где записаны значения начала и конца уроков.

excel-0-01-23-447.png    excel-0-02-02-883.png

Для отключения звонка устройства создадим с помощью панели «Формы» еще один счетчик, настроим ограничения и свяжем его с ячейкой L36

Показания ячейки L36 занесем в ячейку  C35

 

 

 

excel-0-01-54-418.png

В ячейку D35запишем формулу  =ЕСЛИ(И(C35=1;G35=1);1;0), происходит логическое умножение значения ячеек C35 и G35 (ячейка C35 связана со значением показания счетчика включения устройства, в ячейке G35 содержится результат сравнения текущего времени и заданными данными начала и конца уроков)

Для принудительного включения звонка устройства создадим с помощью панели «Формы» еще один счетчик, настроим ограничения и свяжем его с ячейкой В36 и в содержимое ячейки G35=ЕСЛИ(ИЛИ(H35=P8;H35=P10;H35=P12;H35=P14;H35=P16;H35=P18;H35=P20;H35=Q8;H35=Q10;H35=Q12;H35=Q14;H35=Q16;H35=Q18;H35=Q20;H35=I35;B35=B36);1;0) занесем сравнение B35=B36, предварительно записав в ячейку B35 =1

Из Формулы видно при выполнении условия  B35=B36, ячейка G35 примет значение 1, т. е. выполняется условие для включения звонка.

5555

Блок схема устройства

 

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

Текст макроса:

 

Option Explicit 'Объявление библиотеки для работы с параллельным портом

Private Declare Function Inp Lib "inpout32.dll" Alias "Inp32" (ByVal PortAddress As Integer) As Integer

Private Declare Sub Out Lib "inpout32.dll" Alias "Out32" (ByVal PortAddress As Integer, ByVal Value As Integer)

__________________________________________________________________________________________

 

Private Sub Worksheet_Activate() ' Запуск программы Часы (Clock)

    Clock

End Sub

__________________________________________________________________________________________

Sub Clock() 'Часы-подпрограмма

    Do While ActiveSheet.Name = "Лист1" 'пока активен "лист1"

        If Timer = Int(Timer) Then 'в каждую секунду

            Range("B8") = Now() 'в ячейку В8 заносится текущее системное время

            If Range("D35") = 1 Then Out &H378, 8 'если значение ячейки D35 равно 1, то по адресу &H378 заносится 8 (00001000)

            DoEvents 'делай событие

             End If

             Out &H378, 0 ' в регистр параллельного порта заносится 0, т.е. стираем нашу 8

          Loop

           End Sub

                    Далее описание макросов:

В первой части объявляется библиотека для работы с параллельным портом. В виду того, что не все операционные системы содержат библиотеку, необходимо установить файл inpout32.dll в папку C:\WINDOWS\system32

Во второй части происходит запуск  программы Часы (Clock)

 

И наконец код подпрограммы Clock().

 

Sub Clock()                                         'Часы-подпрограмма

    Do While ActiveSheet.Name = "Лист1" 'пока активен "лист1"

        If Timer = Int(Timer) Then             'в каждую секунду

            Range("B8") = Now()                 'в ячейку В8 заносится текущее системное время

            If Range("D35") = 1 Then Out &H378, 8 'если значение ячейки D35 равно 1, то по адресу &H378 заносится 8 (00001000)

            DoEvents                                 'делай событие

             End If

             Out &H378, 0                          'в регистр параллельного порта заносится 0, т.е. стираем нашу 8

          Loop

           End Sub

Значение 1 в регистре параллельного порта хранится в течении 1 секунды, и по истечении этого времени она убирается записью в этот регистр 0.( к информации о необходимости в аппаратной части одновибратора).

Подпрограмма Clock проверяет значение ячейки D35, и при выполнении условия ("D35") = 1 появляется сигнал для подачи звонка.

 

Аппаратная часть устройства.

В нашей школе для этого устройства применяется компьютер 2001 года выпуска. Он долго не использовался, но был еще в рабочем состоянии. В нашем случае мы применяем возможности LPT порта данного компьютера. Так как данный порт используется редко, необходимо убедится в наличии в операционной системе программы для работы с LPT портом, т.е. наличии файла inpout32.dll в папке system и при необходимости вставить этот файл (предварительно скачав из интернета).

С учетом того, что в перспективе мы  хотим что-либо считывать с порта, то нам необходимо переключить режим работы этого порта компьютера в режим EPP (Enhanced Parallel Port - режим двунаправленной передачи данных). Это делается в BIOS. Во время загрузки компьютера когда появится надпись Press DEL to enter setup, нажать DEL, чтобы попасть в меню BIOS. Затем выбираем раздел INTEGRATED PERIPHERALS и там выбираем строку PARALLEL PORT MODE: изменяем режим работы  порта на EPP или SPP/EPP. Сохраняем сделанные изменения. Если же на Вашем компьютере нет режима EPP, то Вы сможете только передавать данные, в данном случае достаточно и этого режима.

Параллельный порт для связи с принтером (или другим устройством) имеет базовый адрес &H378 (LPT1), &H278 (LPT2), &H3BC (LPT3). В нашем компьютере всего один  LPT порт - LPT1. Адресное пространство порта занимает диапазон &H378-&H37F (в шестнадцатеричном виде).  Адрес &H378 называется базовым и служит для передачи или чтения данных (в нашей программа по этому адресу записывается число 8 (строка-

 Out &H378, 8 нашей программы).

Через контакты 2-9 разъема LPT-порта. Остальные адреса служат  для передачи и приема управляющих сигналов к устройству и от устройства подключенного к этому порту (принтер, сканер и т.д.), в данном случае они не используются и нас не интересуют.

 Использовались две программы: splan_7_portable_rus   и SLayout-5rus. Первая позволяет рисовать принципиальные схемы, а вторая составлять печатные монтажи.  Обе программы бесплатные и доступны всем.

 

excel-0-02-45-969.png

Принципиальная схема аппаратной части, составленная с помощью  программы splan_7_portable_rus.

excel-0-02-57-053.pngРазберем работу схемы:

Сигнал с LPT порта поступает через ограничительные резисторы R1-R8 330 Ом   на светодиоды VD1-VD, которые позволяют визуально проследить прохождение сигнала через порт. (светодиод светится).

 

 

excel-0-03-10-312.png

 

 Далее сигнал поступает на одновибратор выполненный на микрсхеме К155ЛА3, состоящий из четырех элементов 2-И-НЕ. Цепочка С1,R9 определяет длительность импульса одновибратора, при значениях с=1000 мкф и R= 1kOm длительность импульса составляет около 8 секунд.( При желании можно изменить подбором значений емкости конденсатора С и сопротивления R).

 

Далее сигнал соответствующей длительности поступает через ограничительный резистор  excel-0-02-45-969.png

на базу транзистора КТ817А и открывает его, срабатывает реле Rel 1 и замыкает контакты. Контакты реле подсоединении параллельно кнопке включения звонка и таким образом звонок будет включен в течение времени, определяемого длительностью сигнала одновибратора.

 

 

 

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

0502 

Хотя есть недорогие китайские реле на 5 Вольт и с контактами на 220 Вольт и током на 10 Ампер. В последующем герконовое реле  заменили на это реле.  За год эксплуатации он показал себя с лучшей стороны.

 

Для правильной  работы порта необходимо уточнить адреса LPT порта в БИОС. Для этого при включении компьютера заходим в БИОС, (в зависимости от компьютера клавиша «DELETE» или другая служебная клавиша),  находим раздел для COM и   LPT портов (Serial и  Parallel портов), уточняем адрес Parallel порта, в нашем случае 378Н и выставляем режим работы порта EPP. (для чтения и записи).

 

 

 

 

excel-0-03-29-159.png excel-0-03-40-330.png

 

44444       excel-0-03-54-860.png

Печатная плата выполненная  с помощью программы SLayout-5rus

 

Готовый к травлению фольгированный текстолит нужного размера

 

Для изготовления платы применялась технология ЛУТ.

 

excel-0-04-00-668.png          excel-0-04-06-472.png

Плата после травления в растворе хлорного железа

 

Монтажная плата с установленными деталями, за неимением реле на 5 вольт, применяется герконовое реле  ( справа с доидом в качестве защиты от напряжения самоиндукции)

 

3.Заключение.

Это было первое устройство, разработанное в кружке. Оно применялось в школе в течении учебного года. Затем были разработаны такие же устройства с применением языка программирования VB, совмещенное устройство для подачи школьных звонков с функцией автоматического проведения утренней зарядки в школе. В настоящее время для подачи школьных звонков используется устройство на микроконтроллере Atmega 8, также разработанное силами кружковцев. (см. последующие публикации).

Несмотря на то, что LPT порт устарел и его возможности сейчас применяются редко, простота его программирования и использования  в тех  или иных устройствах дает возможность практического использования  его возможностей при изучении раздела программирования и устройства компьютеров на уроках информатики в средней школе. Данное устройство может  найти практическое применение для подачи звонков в школах, хотя его возможности не ограничиваются только этим. Сам принцип управления этим портом (запись и чтение регистра порта, а также  состояния управляющих щин порта) дает возможность конструирования устройств с обратной связью, таких как автоматическое поддерживание тех или иных параметров конкретной системы. (Пример: автоматическое поддерживание температуры и  влажности в замкнутой системе,  автоматическое включение освещения в зависимости от освещенности и т.д.)

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

Приложение 1:

Таблица 1 – Функции даты-времени в Microsoft Excel 2007

Функции

Английский эквивалент

 Комментарий

Определения

ТДАТА()

NOW

текущих даты и времени в формате даты и времени

СЕГОДНЯ ()

TODAY

текущей даты в формате даты

Преобразования в код даты-времени MS Excel

ДАТА(гггг;мм;дд)

DATE

из числового формата

ДАТАЗНАЧ("дд.мм.гггг")

DATEVALUE

из текстового формата

ВРЕМЯ (чч;мм;сс)

TIME

из числового формата

ВРЕМЗНАЧ("чч:мм:сс")

TIMEVALUE

из текстового формата

 Выделения из кода

ГОД(дата)

YEAR

года - целое число от 1900 до 9999

МЕСЯЦ(дата)

MONTH

месяца - число от 1 до 12

ДЕНЬ(дата)

DAY

даты месяца - число от 1 до 31

ЧАС(время)

HOUR

часа в виде числа от 0 до 23

МИНУТЫ(время)

MINUTE

минут в виде числа от 0 до 59

СЕКУНДЫ(время)

SECOND

секунд в виде числа от 0 до 59

Вычисления

ДЕНЬНЕД(дата;тип)

WEEKDAY

номера дня недели для заданной даты

ДНЕЙ360(дата1;дата2)

DAYS360

количества дней между датами

ДОЛЯГОДА(дата1;дата2)

YEARFRAC

доли года, между двумя датами

ДАТАМЕС(дата;N)

EDATE

даты, отстоящей от указанной на N месяцев

КОНМЕСЯЦА(дата;N)

EOMONTH

даты последнего дня месяца, отстоящего на N месяцев

НОМНЕДЕЛИ(дата)

WEEKNUM

номера недели года с указанной датой

РАБДЕНЬ(дата;N)

WORKDAY

даты, отстоящей от указанной на N рабочих дней

ЧИСТРАБДНИ(дата1;дата2)

NETWORKDAYS

количество рабочих дней между двумя датами

 

Приложение 2.

Рези́стор (англ. resistor, от лат. resisto — сопротивляюсь) — пассивный элемент электрической цепи, в идеале характеризуемый только сопротивлением электрическому току, то есть для идеального резистора в любой момент времени должен выполняться закон Ома для участка цепи: мгновенное значение напряжения на резисторе пропорционально току проходящему через него ~U(t) = R \cdot I(t).

Светодио́д или светоизлучающий диод (СД, СИД, LED англ. Light-emitting diode) полупроводниковый прибор с электронно-дырочным переходом, создающий оптическое излучение при пропускании через него электрического тока.

Транзи́стор (англ. transistor), полупроводниковый триод радиоэлектронный компонент из полупроводникового материала, обычно с тремя выводами, позволяющий входным сигналом управлять током в электрической цепи. Обычно используется для усиления, генерации и преобразования электрических сигналов.

Симиcтop (симметричный триодный тиристор) или триак (от англ. TRIACtriode for alternating current) — полупроводниковый прибор, являющийся разновидностью тиристоров и используемый для коммутации в цепях переменного тока. В электронике часто рассматривается как управляемый выключатель (ключ).

Реле́ (фр. relais) — электрическое устройство (выключатель), предназначенное для замыкания и размыкания различных участков электрических цепей при заданных изменениях электрических или неэлектрических входных величин. Различают электрические, механические и тепловые реле.

Микросхема к155ла3 представляет собой четыре логических элемента 2И-НЕ.

( логическое умножение и отрицание)

 

Геркон состоит из герметических магнитно управляемых контактов.

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

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

 

 

 

Просмотрено: 0%
Просмотрено: 0%
Скачать материал
Скачать материал "Автоматическое устройство для подачи школьных звонков с использованием макросов, интегрированных в Microsoft Office 2007"

Методические разработки к Вашему уроку:

Получите новую специальность за 3 месяца

Дефектоскопист

Получите профессию

Методист-разработчик онлайн-курсов

за 6 месяцев

Пройти курс

Рабочие листы
к вашим урокам

Скачать

Скачать материал

Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:

6 665 120 материалов в базе

Скачать материал

Вам будут интересны эти курсы:

Оставьте свой комментарий

Авторизуйтесь, чтобы задавать вопросы.

  • Скачать материал
    • 29.09.2016 2480
    • DOCX 5.7 мбайт
    • Оцените материал:
  • Настоящий материал опубликован пользователем Савельев Алексей Викторович. Инфоурок является информационным посредником и предоставляет пользователям возможность размещать на сайте методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайт

    Если Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с сайта, Вы можете оставить жалобу на материал.

    Удалить материал
  • Автор материала

    Савельев Алексей Викторович
    Савельев Алексей Викторович
    • На сайте: 7 лет и 7 месяцев
    • Подписчики: 2
    • Всего просмотров: 7394
    • Всего материалов: 6

Ваша скидка на курсы

40%
Скидка для нового слушателя. Войдите на сайт, чтобы применить скидку к любому курсу
Курсы со скидкой