Родился в семье военного. Образование получал в Константиновском кадетском корпусе, а высшее оразование получил закончив Николаевский Военный инженероно-технический университет и став военным инженером в 1858 году. Затем там-же служил на кафедре математики под руководством известного ученого М. В. Остроградского, передавшего ученику высокую математическую культуру, глубину абстрактного мышления и превосходное владение аналитическим аппаратом при решении практических задач. Будучи вольнослушателем Технологического института, Н. П. Петров принимал участие в проектировании машин на Охтенском заводе в коллективе талантливого конструктора профессора И. А. Вышнеградского.
В 1865 г. был направлен за границу для изучения прикладной механики. По возвращении читал лекции в Петербургском технологическом институте и Инженерной академии. После присвоения в 1867 г. звания адъюнкт-профессора практической механики Инженерной академии выполнял крупные научно-исследовательские работы по созданию оборудования военных заводов. Возглавлял кафедру паровой механики в Петербургском технологическом институте, а в 1871 г. кафедру железнодорожного дела. В это время начинается научная деятельность Н. П. Петрова в области трения, износа и смазки. В 1873 г. стал членом Инженерного совета Общества российских железных дорог, принимал участие в строительстве Транссибирской железной дороги.
В 1892 г. Н. П. Петров был назначен председателем Инженерного совета Министерства путей сообщения, а в 1893 г. — заместителем министра путей сообщения. В 1894 г. избирается почетным членом Петербургской академии наук. С 1896 по 1905 г. был председателем Русского технического общества.
С 1900 года — член Государственного Совета. В Реформированном Госсовете после 1906 — присутствующий член, с 1907 по 1916 — председатель 2-го департамента.
В июле 1915 года назначен председателем «Верховной комиссии для всестороннего расследования обстоятельств, послуживших причиной несвоевременного и недостаточного пополнения запасов военного снаряжения». Постановлением этой комиссии в 1916 году было возбуждено уголовное преследование против В. А. Сухомлинова.
За свою жизнь опубликовал более 80 научных работ и был удостоен многих премий. Ему была присуждена золотая медаль Русского технического общества, и он был избран почетным членом Московского политехнического общества.