Forth Success Stories

Forth може да бъде открит в:

*Публикацията Космически приложения на Forth първоначално е съставена от вече пенсионирания учен от NASA Джеймс Раш и е публикувана на http://forth.gsfc.nasa.gov/. Оттогава страницата е премахната от уебсайта, но е архивирана тук.

* Бележки за приложенията във FORTH, Inc.

Музикални приложения

Forth и компютърната музика в катедра "Технологии в музиката и свързаните с нея изкуства" (TIMARA) на Оберлинската консерватория - 04/28/2006

Цялата статия

TalberTronics - Проекти на Джон Талбърт

1984

Прототипът на MIDI Horn е проектиран и построен. Това е духов контролер със сензор за налягане, 8 превключвателя и няколко плъзгача/педала. Данните от контролера се подават към едноплатков микрокомпютър Z8, който интерпретира данните и ги преобразува в MIDI управляващи сигнали. За програмирането на устройството е използван езикът Forth, тъй като BASIC се оказа твърде бавен.

1987

Създадена е окончателната версия на MIDI Horn. Това е инструмент с MIDI контролер, базиран на едноплатков микрокомпютър и програмиран на езика за програмиране Forth. Гари Нелсън изнася MIDI Horn на път с над 200 изпълнения по целия свят. Той използва MIDI Horn като интерфейс за изпълнение, част от "хиперинструмент", състоящ се от компютър Macintosh, набор от цифрови синтезатори и софтуерът (Max/MSP), който ги свързва. В "хиперинструмента" контролерът не свири непременно "ноти", а изпраща сигнали за изпълнение, върху които действа компютърна програма, съставена да контролира начина на изпълнение на музиката.

След като работих с езика за програмиране Forth на MIDI Horn, съм впечатлен от неговата бързина, компактност и лекота на използване. Езикът Forth се състои от речник от думи (подпрограми) и няколко стека за съхраняване на данните на подпрограмите. Програмирането на Forth е въпрос на изграждане на нови "думи" чрез комбиниране на вече изградени думи, вече налични в речника, като по този начин се създава йерархия от думи. Думите от по-високо ниво могат лесно да бъдат тествани, като се изпълняват техните компоненти от по-ниско ниво. Думите от по-ниско ниво, които се занимават директно с хардуера на процесора, се изграждат лесно, дори с използване на асемблер, ако това се счита за необходимо за постигане на бързина.

През 1987 г. микрокомпютърът Ohio Scientific е надграден със система, базирана на Forth (RSC Forth). Езикът е значително разширен с думи, които се занимават с хибридния синтезатор, MIDI входа и изхода, устройство за таймер, нов SID синтезаторен чип и всички устройства, използвани за управление на аналоговите синтезатори, като DAC/ЦАП (цифрово-аналогов преобразувател) и ADC/АЦП (аналогово-цифров преобразувател) за управляващо напрежение, детектори и генератори на импулси. Интерфейсът на хибридния синтезатор е преработен с нови генератори на вълни и управление на таймера. Инсталирани са флопидискови устройства за съхранение на потребителски програми.

1988

Аналоговите синтезаторни схеми достигат определена зрялост с наличието на чипове като Solid State Music и музикалните чипове на Curtis. Използвам ги, за да проектирам и създам осемстепенен усилвател с контролирано напрежение (VCA/Voltage Controlled Amplifier), четиристепенен филтър с контролирано напрежение (VCF/Voltage Controlled Filter), звуков възбудител (AE/Aural Exciter) с всички налични компоненти и кутия за аналогова закъснителна линия (ADL/Analog Delay Line). Всички те могат да се управляват с Ohio Scientific Micro, като се използват разширените помощни думи на Forth.

1993

Започва работа по проектиране и изграждане на устройства за управление на напрежението към MIDI устройства. В един от проектите се използва микропроцесор 8088 с ROM-базирана Forth система, контролираща 8 битови ADC/АЦП. Друг проект е за препрограмиране на плъзгаща кутия Roland PG1000, за да излъчва всякакъв вид MIDI сигнал.

Крис Пасауер

Търговски приложения

Сканиращ тунелен микроскоп - 05/27/2011

"Спомням си още в края на 80-те години колко готино беше да получа разпечатка на масив от въглеродни атоми от първия настолен сканиращ тунелен микроскоп (STM/Scanning Tunneling Microscope), който използваше за контролер нашата PC4000 PC plug-in платка, която използваше за микропроцесор чипа Novix NC4000 Forth. Този STM беше един от първите успехи на Silicon Composers в областта на OEM. Мисля, че някъде все още имам кода на Forth на ниско ниво, използван за управление на иглата на микроскопа с xyz-позиция, която буквално прелиташе над въглеродния образец. В ранните версии на системата преди пускането й в продажба главата понякога се разбиваше в планините от въглерод."

"Забавни времена."

Джордж Никол

george -at- inscenes.com

Анализатори на двигатели - 10/21/2010

"През 1986 г. работех за Bear Automotive в Брукфийлд, Уисконсин, която използваше Forth за програмиране на анализатори на двигатели (Pre-OBD). Тогава те работеха с Mercedes-Benz."

"Приложил съм известна документация за продукта, който беше изграден на базата на софтуер на Forth. Машината, върху която работих, беше хардуерът на анализатора на модела PACE 200/400."

"Работих за компанията през 1986-1987 г., точно преди преместването им от Брукфийлд в Ню Берлин, щата Уисконсин, през последната година. През май 1988 г. компанията беше закупена от SPX Corporation за 66 млн. долара."

"Все още съществува компания за реновиране, наречена Team Bear USA. Нямам връзка с нея."

Снимка на Bear 400

Снимка на Bear 3000

Брошура Pace 200 - 313 Kb pdf файл

Брошура Pace 400 - 3,52 Mb pdf файл

Скот Матус

smartus -at- barclaycardus.com

Филмов кран - 12/31/2009

"Направих допълнение към филмовия кран на Panavision, наречено Back Pan Plus. То помага на оператора, като премахва движенията на ръкохватките и поддържа камерата насочена към актьора. Общото време за програмиране беше само няколко седмици. Оттогава се използва в много филми, а един е вграден за постоянно на снимачната площадка на Опра. Forth продължава да печели впечатляващи победи навсякъде, където е възприет."

Ранди М. Дъмс

Нови микропроцесори

rmdumse -at- newmicros.com

rmd -at- newmicros.com

Белодробно приложение - 11/20/2004

"Направено на едни дъх болнично приложение писано на Forth работи непрекъснато в белодробното отделение на медицинския център "Сидърс-Синай" от края на 70-те години на миналия век."

"Основните приложения са разработени от FORTH, Inc. за PDP 11/60 със само 16K памет. Чък Мур и Бет Радър очевидно са прекарали много дълги нощи, сгушени над терминалите на Tektronix, разработвайки малките апликации. Едното беше система за събиране на данни в реално време за изследване на белодробната функция, а другото - датабаза за данни за газовете в артериалната кръв (ABG). Ядрото на Forth беше по-малко от 1K. Когато си тръгнаха, приложенията бяха функционални, въпреки че системата се сриваше на всеки около 20 минути."

"Работя с тази система от 1981 г., като по това време беше пуснато и приложение за фактуриране. Разработваха се и наченките на система за въвеждане на поръчки за респираторна терапия. Последната щеше да бъде приложение, работещо 24 часа в денонощието, което изискваше много по-стабилна операционна система. След като направих обратен инженеринг на ядрото, открих няколко грешки, които причиняваха постоянните сривове. Написах генератор на ядрото, за да мога да поправя грешките и да добавя някои необходими възможности, и пренаписах мултипрограматора, за да бъде по-ефективен и стабилен. Сега всичко работеше. А допреди няколко години на щат винаги имаше 2-3 програмисти, само за да разработват и поддържат приложенията."

"През годините бяха добавяни и премахвани приложения, включително система за тестване с физически упражнения в реално време "вдишване по вдишване" и различни приложения за бази данни. През 1987 г. се мигрира към PDP 11/84, а след това през 1998 г. Изходният код на приложението е пренаписан за UR/Forth на LMI на персонален компютър."

"Днес средата LMI Forth работи в DOS box емулатор на компютър с Windows 98SE, като се свързва с потребители, принтер, баркод скенери, лабораторно оборудване и други компютри чрез 35 серийни порта. Тя поддържа HL7 връзки с други болнични системи, като изпраща лабораторни данни и получава информация за приемане/изписване/прехвърляне. Един от портовете се захранва от други болнични системи като опашка за принтер и стотици финансови и клинични отчети се "отпечатват" ежедневно на тази опашка, където системата Forth ги анализира, за да попълни множество бази данни. Това ни дава уникалната възможност автоматично да съгласуваме информация, която други отдели трябва да правят на ръка от отпечатаните отчети."

"Днес всички основни приложения са приложения за бази данни; приложенията в реално време са заменени от готови системи, които се свързват последователно. Основните приложения са въвеждане на поръчки за респираторно лечение, фактуриране, данни за функционално изследване на белите дробове (PFT)/Упражнение и лабораторни данни за ABG. Съществуват над 5 000 блока активен изходен код на Forth - може би 50 000 реда код. Разполагаме с 2 GB предимно двоични данни, включващи лабораторни резултати, поръчки и финансови данни, някои от които датират от 70-те години на миналия век."

"Сега съм ръководител на отдела по белодробна медицина и единственият човек, който все още поддържа системата Forth. Тя все още е в постоянно движение, добавя възможности и се адаптира към изискванията за грижи за пациентите и ефективност. Днес болниците са регулаторно и финансово предизвикателство. Малко от тях работят на черно и всички изпитват затруднения да са в крак с бързо променящите се технологии и разпоредби за грижа за пациентите. Нашата система е уникална с това, че не струва почти нищо за експлоатация, но имаме пълен контрол върху всички приложения и благодарение на лекотата и мощта на програмирането на Forth можем да се адаптираме в кратки срокове."

Джордж Апългейт

applegat -at-ix.netcom.com

Подводно превозно средство Argo

Ансамбълът от сонари, светлини и камери на Argo се управлява от множество компютри, всеки от които е програмиран на различен компютърен език. Компютърът на самия безпилотен кораб Argo беше програмиран на Forth - кратък, но универсален език, първоначално създаден за регулиране на движението на телескопи и използван също за управление на устройства и процеси, вариращи от сърдечни монитори до видеокамери със специални ефекти. Компютърът на Knorr е програмиран на C - мощен, но доста загадъчен език, способен да дефинира точно компютърните операции. Телеметричната система в двата края на дебелия като пръст коаксиален кабел, свързващ плавателните съдове, която на практика позволява на компютрите им да разговарят помежду си, беше програмирана на трети, елементарен език, известен като асемблер.

Forth беше единственият език от високо ниво, който можеше да се използва на компютъра на подводницата Argo.

Извадка от: Мъчителният път на ранното програмиране

Вижте тази уебстраница на Enchanted Learning за информация относно Робърт Д. Балард, подводен изследовател

Препратка от един ред към това приложение на Forth може да бъде намерена в записа от 1985 г. в книгата на Byte "Кратка история на езиците за програмиране": "Forth управлява подводната шейна, която открива останките на Титаник"

Контролери за паркинг на BART от AM Research - 01/15/2004

"Контролерите за паркинги на BART работят с ранна версия на amrFORTH на микроконтролер 80C552. Направена преди почти 10 години, тази машина ще видите като кутия от неръждаема стомана вътре в станцията, след като закупите билета си и минете през бариерата (като в метрото)."

"Трябва да запомните номера на кабинката си за паркиране, след което да го въведете в машината. Разпределена база данни съдържа всички използвани в момента паркинги. Охраната вкарва специален код и получава разпечатка на привидно празните кабинки. Всички автомобили, които се намират там, трябва да получат фиш. По този начин се предотвратява препълването на паркингите на BART с купувачи, като същевременно се осигурява нормален достъп до паркинга."

Алберт Лий Мичъл

Ztar MIDI контролер

Starr Labs Ztar е подобен на китара контролер за MIDI музикални синтезатори. За разлика от устройствата, които се опитват да извлекат MIDI контролен поток от аудио изхода на обикновена китара, Ztar е напълно цифров инструмент с вътрешен микропроцесор и сензори за праговете и струните.

Стотици сензори трябва да се семплират и обработват в реално време, за да се генерира MIDI управляващ поток и да се избегнат времеви разминавания, които биха били болезнено забележими при музикално изпълнение. Ztar използва микропроцесор Zilog Super8, програмиран на смесица от Forth и асемблер, за да отговори на тези изисквания.

Анализатор на протоколи WAN/LAN на Tektronix

Този продукт представлява сложно приложение за бази данни, използващо Forth.

Вижте и следните връзки:

K1297 K1205 Series тестер за протоколи - GSM PCS Software

Tektronix добавя възможности за тестване на мобилни интерфейси в подкрепа на телекомуникационните мрежи от следващо поколение

Протоколи и тестване на универсалната мобилна телекомуникационна система (UMTS)

Системи Дорадо - 01/15/2004

"Ето една миниатюра за Forth и Dorado Systems. Продадохме 650 енергийни контролера на Lucky Markets, направени във Forth, няколко хиляди панела за контрол на достъпа и десетки хиляди четци за карти с магнитна лента (4000 само на международното летище в Денвър)."

"Всички продукти бяха направени във Forth, предимно 68HC11, на Forth асемблер и някои по-големи продукти в областта на енергийния контрол, кодирането на картови четци и т.н. на Forth от високо ниво. Някои продукти работеха на персонални компютри, а други 6502-ци бяха за вградени системи 68HC11. Андрю МакКюън беше нашият гуру, тъй като в края на 80-те години на миналия век аз постепенно се отказах от програмирането на продукти."

Бил Рагсдейл

Проекти

Боинг

Системи за авионика на Boeing 777

"Проектиране и кодиране на вградени ядра на Forth, които да работят на авиониката на Boeing 777. Ядрата на Forth се използват за проверка на инженерния проект, проверка на производството и отстраняване на грешки при повредени хардуерни единици. Ядрото е написано на език за асемблиране за микропроцесори 68030, 68332 и 80960. Преподавах въвеждащи уроци по програмиране на Forth на инженерите по хардуерен дизайн и помагах при проблеми в техния код на Forth. Разработката се извършваше на компютър VAX, като се използваше CMS (Code Management System/Система за управление на код) за проследяване на разработването на изходния код. Отстраняването на грешки и интегрирането на ядрото се извършваше с помощта на вътрешно-верижни емулатори. (ICE/In-Circuit-Emulators)"

Робърт Блайт

Функционални тестови ядра (FTK/Functional Test Kernels)

"Отговарях за вграждането на функционални тестови ядра (FTK) във всички CAS/CMS 777 LRU. FTK е интерпретатор на Forth, който се намира на всички компютърни платки на Boeing 777. Задачата изискваше и включването на нови Forth функции и нов хардуер за серията 68xxx."

Денис Р. Монтгомъри

Изследователски приложения

Приложения за рехабилитация

Инвалидна количка “Alexis”

Alexis е иновативна електрическа инвалидна количка, използваща дизайн "колела в колелата". Тя е уникална с това, че може да се върти в собствения си отпечатък и да се движи настрани. Центърът за научноизследователска и развойна дейност в областта на рехабилитацията на VA Palo Alto Heath Care System лицензира Intex Industries да направи “Alexis: търговски достъпен през 1987 г., а Intex направи 40 предпроизводствени единици за полеви изпитания в района на Сан Антонио. По време на последвалите усилия за препроектиране компанията обявяви фалит, което възпрепятства по-нататъшната комерсиализация по това време.

Lingraphica

Lingraphica е преносимо помощно и терапевтично комуникационно устройство за хора с афазия вследствие на инсулт или друго мозъчно увреждане. То е разработено в рамките на проект на VA Merit Review в Центъра за рехабилитация и научноизследователска дейност (Rehab R&D Center) през 1987-1989 г. и е пуснато на пазара през 1990 г. по силата на Закона за трансфер на технологии. През 1996 г. компанията майка, Lingraphicare America, пренасочи усилията си от продажба на медицински изделия към предоставяне на клинични услуги за езикова и логопедична терапия на възрастни с афазия. Техните услуги, в които се използва Lingraphica, отчитат по-голям процент на подобрение и по-добри крайни резултати в сравнение с традиционната логопедична терапия.

Инвалидна количка с ултразвуково управление на главата

Този интерфейс за моторизирана инвалидна количка позволява на хора с квадриплегия да контролират скоростта и посоката на движение на количката, като накланят главата си в желаната посока на движение.

Ralph Fingerspelling Hand - ръка за писане с пръсти

Тази компютърно управлявана електромеханична ръка за писане с пръсти предлага на глухонемите лица подобрен достъп до компютри и комуникационни устройства в допълнение към разговорите между хората.

Приложения на Forth в устройства, обслужващи хора с увреждания - Сборник с доклади от конференцията Forth в Рочест през 1992 г. - David L. Jaffe

"В този доклад обсъждам как се използват характеристиките на Forth в устройства, които обслужват хора с увреждания, с четири конкретни примера, взети от моите изследвания и тези на мои колеги."

Моля, изпращайте истории за успехи на Forth и търговски приложения на уеб мастъра на FIG.