Mira bien lo que programas:
Código PHP:
Ver originalfunction InsertarDatos($nombre_tabla, $array_datos)
Ahí especificas sólo dos argumentos, así que el chiste se explica solo:
Código PHP:
Ver original$op->InsertarDatos($_POST['nombre'], $_POST['caracteristicas'], $_POST['antiguedad'], $nombre_tabla);
Claramente no respetas la firma que tu mismo declaraste en dicho método.