IMHO, один из наиболее надежных (и простых) вариантов - магнитоуправляемая микросхема (думаю, что
Chudik имел ввиду именно ее). В ней стоит датчик Холла, усилитель, триггер Шмидта и формирователь уровня ТТЛ на выходе.
Я обычно использовал микруху MSSH (стояла в чехословацких печатающих устройствах "Консул") - всего 4 ноги, питание +5в, весьма надежна и стоит недорого.
Есть и наши (только там 5 ног).
Еще нужен постоянный магнит. Магнитный поток прерывается ферромагнитной шторкой (напр., стальной). Если не нужна очень высокая точность, то можно просто расположить магнит на подвижном механизме.
Еще в советских станках в качестве концевиков часто ставили индуктивный датчик. Принцип следующий: две катушки с индуктивной связью и простейший усилитель (на одном транзисторе) образуют автогенератор (примерно на 400 кГц). После стоит простейший детектор и триггер Шмидта.
Между сердечниками катушек - зазор. Пластинка из ферромагнитного материала, расположенная на подвижном механизме, вводится в зазор, прерывая индуктивную связь, и , т.обр, срывая автогенерацию.
Эти датчики выпускались в пластмассовом корпусе с прорезью у одного торца, и назывались... забыл

( "ИД... чего-то там" ).
Тоже весьма просты, надежны и долговечны.