Faits :
A.
Par jugement du 13 octobre 2016, le Tribunal de police de l'arrondissement de l'Est vaudois a condamné X._, pour homicide par négligence, entrave aux mesures de constatation de l'incapacité de conduire, violation des obligations en cas d'accident et contravention à l'ordonnance sur la circulation routière, à une peine privative de liberté de dix mois, avec sursis pendant deux ans, et à une amende de 2000 francs.
B.
Par jugement du 29 mars 2017, la Cour d'appel pénale du Tribunal cantonal vaudois a rejeté l'appel formé par X._.
En substance, elle a retenu les faits suivants:
Le 13 février 2014, aux alentours de 18h00, circulant à la vitesse du pas au volant d'un poids lourd sur l'avenue B._ à C._, sous une pluie battante, X._ n'a pas remarqué la présence de D._ sur la chaussée, roulant sur son corps et causant immédiatement sa mort. Il a ensuite immobilisé son véhicule plusieurs mètres après le lieu de l'accident, est sorti de l'habitacle du camion et s'est rendu à proximité du corps de la victime puis, réalisant être l'auteur de l'accident, est immédiatement retourné à son véhicule et a quitté les lieux. Arrivé à son domicile, il a consommé trois verres de vin blanc durant le repas, avant l'interpellation de la police.
C.
Contre ce dernier jugement, X._ a déposé un recours en matière pénale devant le Tribunal fédéral. Il a conclut, principalement, à sa libération du chef des infractions d'homicide par négligence, de violation des obligations en cas d'accident et d'entrave aux mesures de constatation de l'incapacité de conduire ainsi qu'à l'allocation d'une indemnité selon l'<ref-law>. A titre subsidiaire, il demande l'annulation du jugement de première instance et du jugement d'appel et le renvoi de la cause au tribunal de première instance pour complément de l'instruction dans le sens des considérants. En outre, il sollicite l'assistance judiciaire.

Considérant en droit :
1.
1.1. En relation avec sa condamnation pour homicide par négligence, le recourant se plaint d'arbitraire dans l'établissement des faits.
1.1.1. Le Tribunal fédéral n'est pas une autorité d'appel devant laquelle les faits établis en dernière instance cantonale peuvent être librement rediscutés. Il est lié par les constatations de faits de la décision entreprise (<ref-law>), à moins que celles-ci n'aient été établies de façon manifestement inexacte ou en violation du droit au sens de l'<ref-law> (art. 97 al. 1 et 105 al. 2 LTF), à savoir, pour l'essentiel, de façon arbitraire (art. 9 Cst.; <ref-ruling> consid. 2.3.1 p. 244; <ref-ruling> consid. 6.3 p. 375). Une décision n'est pas arbitraire du seul fait qu'elle apparaît discutable ou même critiquable; il faut qu'elle soit manifestement insoutenable, et cela non seulement dans sa motivation mais aussi dans son résultat (<ref-ruling> consid. 4.3 p. 380; <ref-ruling> consid. 1.2 p. 308 s.; <ref-ruling> consid. 3.4 p. 53). Le Tribunal fédéral n'entre en matière sur les moyens fondés sur la violation de droits fondamentaux, dont la prohibition de l'arbitraire, que s'ils ont été invoqués et motivés de manière précise (<ref-law>; <ref-ruling> consid. 2.4 p. 368). Les critiques de nature appellatoire sont irrecevables (<ref-ruling> consid. 2.4 p. 368; <ref-ruling> consid. 1.3.1 p. 253).
1.1.2. Dans un premier moyen, le recourant soutient que la cour cantonale a versé dans l'arbitraire en retenant que la victime ne se trouvait pas sur le trottoir, mais sur la route ou sur le passage pour piétons au moment de l'accident. Il fait notamment valoir que, si la victime avait été sur la route, elle aurait été happée par l'avant du camion et non, comme en l'espèce, écrasée par la roue gauche du deuxième essieu. Il en conclut qu'il n'aurait commis aucune négligence en n'apercevant pas la victime.
La cour cantonale a considéré que l'emplacement du corps de la victime sur la route, à un peu plus d'un mètre du trottoir et en particulier son orientation parallèlement à celui-ci - confirmée par les lésions notamment -, ainsi que l'absence de traces de sang et de matières organiques entre le corps et le bord de la chaussée démontraient que la victime ne se trouvait pas sur le trottoir au moment du choc mais sur la route et qu'elle n'avait pas été traînée de l'un à l'autre. Elle a ajouté que l'hypothèse que la victime aurait glissé du trottoir et roulé entre les essieux était impossible au vu de l'orientation du corps parallèlement à la chaussée. Enfin, elle a expliqué que la victime avait heurté le côté du camion et non l'avant, par le fait que le camion était en train d'obliquer. Le raisonnement de la cour cantonale ne suscite aucune critique. Le recourant se borne à qualifier ce raisonnement d'arbitraire, sans expliquer en quoi il le serait. Dépourvue de toute motivation (<ref-law>), une telle critique est irrecevable.
1.1.3. Le recourant soutient que la victime se serait trouvée sur le trottoir lors du passage du camion et qu'elle aurait fait un malaise, vraisemblablement une crise d'épilepsie. Selon le recourant, ce comportement de la victime aurait rompu le lien de causalité entre son éventuelle négligence et le décès.
La cour cantonale a jugé invraisemblable la thèse du recourant, selon laquelle la victime aurait eu une crise épileptique au moment de l'accident. Elle s'est, d'abord, fondée sur un rapport de consultation émanant du médecin traitant du défunt du 27 mars 2017, qui exposait qu'il était très peu probable que la victime subisse une nouvelle crise d'épilepsie. Ensuite, elle s'est référée aux analyses effectuées sur le corps de la victime qui avaient révélé que la victime prenait encore son traitement antiépileptique. De nouveau, le recourant conteste le raisonnement de la cour cantonale, sans toutefois démontrer en quoi celui-ci serait arbitraire. Purement appellatoire (<ref-law>), son argumentation est irrecevable.
1.2. Dénonçant une violation de l'<ref-law>, le recourant conteste avoir commis une négligence et le rapport de causalité entre celle-ci et le décès de la victime.
1.2.1. L'<ref-law>, qui réprime l'homicide par négligence, suppose la réunion de trois conditions: le décès d'une personne, une négligence et un lien de causalité entre la négligence et la mort (<ref-ruling> consid. 3 p. 147).
La négligence est définie à l'<ref-law>, selon lequel " agit par négligence quiconque, par une imprévoyance coupable, commet un crime ou un délit sans se rendre compte des conséquences de son acte ou sans en tenir compte. L'imprévoyance est coupable quand l'auteur n'a pas usé des précautions commandées par les circonstances et par sa situation personnelle ".
Pour qu'il y ait homicide par négligence, il faut tout d'abord que l'auteur ait violé les règles de prudence que les circonstances lui imposaient pour ne pas excéder les limites du risque admissible (<ref-ruling> consid. 3b/aa p. 147). Pour déterminer plus précisément quels étaient les devoirs imposés par la prudence, on peut se référer à des normes édictées par l'ordre juridique pour assurer la sécurité et éviter les accidents. Dans le domaine du trafic routier, on se référera donc aux règles de la circulation (<ref-ruling> consid. 4a/aa p. 92; <ref-ruling> consid. 2a p. 135, 225 consid. 2a p. 227).
Selon l'<ref-law>, " le conducteur devra rester constamment maître de son véhicule de façon à pouvoir se conformer aux devoirs de la prudence ". L'<ref-law> prévoit que " le conducteur facilitera aux piétons la traversée de la chaussée " (al. 1). " Avant les passages pour piétons, le conducteur circulera avec une prudence particulière et, au besoin, s'arrêtera pour laisser la priorité aux piétons qui se trouvent déjà sur le passage ou s'y engagent " (al. 2).
Selon la jurisprudence, le conducteur doit vouer à la route et au trafic toute l'attention possible, le degré de cette attention devant être apprécié au regard de toutes les circonstances, telles que la densité du trafic, la configuration des lieux, l'heure, la visibilité et les sources de danger prévisibles (<ref-ruling> consid. 2b p. 104). La " prudence particulière " avant les passages pour piétons que doit adopter le conducteur selon l'<ref-law> signifie qu'il doit porter une attention accrue à ces passages protégés et à leurs abords par rapport au reste du trafic et être prêt à s'arrêter à temps si un piéton traverse la chaussée ou en manifeste la volonté (cf. <ref-ruling> consid. 4b p. 291/292; <ref-ruling> consid. 1a p. 285). La prudence particulière exigée par l'<ref-law> s'étend également aux abords du passage de sécurité (arrêt 6S.96/2006 du 3 avril 2006 consid. 2.2, publié in JT 2006 I 439 consid. 2.2).
1.2.2. Selon les faits constatés, la victime se trouvait sur la route, sur ou à proximité d'un passage pour piétons. Le recourant a focalisé son attention sur la droite avant d'entamer son virage à gauche dans la rue E._ et n'a pas vu la victime qui se trouvait sur la partie gauche de la chaussée de la rue E._. Malgré la pluie battante, la visibilité était plutôt bonne et le passage pour piétons était parfaitement visible, de sorte qu'il aurait pu et aurait dû voir la victime. La négligence consiste en une inattention de plusieurs secondes et dans le fait de ne pas avoir aperçu la victime aux abords du passage pour piétons.
Il existe un lien de causalité naturel et adéquat entre l'inattention du recourant et le décès de la victime. C'est en vain que le recourant soutient que le lien de causalité entre la négligence et le décès aurait été rompu du fait du comportement extraordinaire de la victime. En effet, son argumentation consistant à dire que la victime se serait trouvée sur le trottoir lors du passage du camion et qu'elle aurait fait un malaise, vraisemblablement une crise d'épilepsie, est purement appellatoire et donc irrecevable (cf. consid. 1.1). Au vu des faits constatés, aucun événement extraordinaire n'a interrompu le lien de causalité.
C'est donc à juste titre que la cour cantonale a condamné le recourant pour homicide par négligence.
2.
Le recourant conteste sa condamnation pour violation des obligations en cas d'accident. Il dénonce l'arbitraire dans l'établissement des faits, faisant valoir qu'il n'a pas remarqué avoir écrasé la victime.
2.1. La cour cantonale a retenu que le recourant s'était rendu compte qu'un événement anormal s'était produit lorsqu'il a obliqué sur la rue E._. Premièrement, deux témoins avaient déclaré avoir entendu un bruit lors du passage du camion, jusqu'à l'intérieur d'une boutique se trouvant à proximité. Deuxièmement, lors d'une reconstitution, un agent de police de l'unité circulation avait roulé sur une tête de porc et avait déclaré avoir ressenti une secousse, quoique légère; or, le camion du recourant avait roulé non seulement sur la tête mais sur l'entier du corps de la victime. Enfin, selon le tachygraphe du camion, le recourant avait légèrement décéléré après l'accident - alors qu'il était usuel d'accélérer après un virage -, il s'était arrêté 7 secondes après l'accident et avait coupé le moteur après avoir parcouru une quinzaine de mètres. Le recourant se borne à contester les second et troisième éléments retenus par la cour cantonale, mais n'établit pas en quoi l'appréciation de celle-ci serait arbitraire. Son argumentation est irrecevable.
En outre, la cour cantonale a retenu que le recourant avait immobilisé son véhicule plusieurs mètres après le lieu de l'accident, qu'il était sorti de l'habitacle du camion et qu'il s'était rendu à proximité du corps de la victime. En effet, premièrement, le tachygraphe montrait que le recourant avait arrêté son moteur à 18 heures et 20 secondes et qu'il l'avait rallumé à 18 heures et 59 secondes, à savoir après 38 secondes. Le recourant soutient ne pas avoir pu faire l'aller et retour en 38 secondes, dès lors que l'arrière du camion se trouvait à 35 mètres du corps de la victime et sa cabine à 43 mètres (le camion mesurant 8 mètres 70). Les calculs du recourant ne sont pas pertinents, dans la mesure où l'on ignore exactement où s'est arrêté le camion. Le tachygraphe a démontré que le camion s'était arrêté à 15,56 mètres du lieu de l'accident, alors que, lors de la reconstitution, le camion a été positionné devant l'entreprise F._, l'arrière du camion ayant été mesuré à 35 mètres du corps, ce qui concordait mieux avec les déclarations du témoin.
Deuxièmement, quatre témoins avaient aperçu un homme vêtu d'un gilet jaune fluorescent - ce qui était le cas du recourant - s'approcher du corps de la victime puis repartir. Le recourant conteste l'appréciation des témoignages faite par la cour cantonale. Il lui reproche notamment de ne pas avoir écarté le témoignage de G._ au motif que celui-ci avait déclaré que l'homme au gilet jaune portait un bonnet noir ainsi qu'une barbe et une moustache blanches, alors que tel n'était pas le cas. Aucun arbitraire ne peut toutefois être reproché à la cour cantonale, puisque le témoin a déclaré " avoir l'impression " que l'homme en question portait " probablement " une barbe et une moustache blanches et qu'il a ajouté qu'il n'était pas sûr de sa description. Ce qui est déterminant, c'est que le témoin a parlé d'un homme qui portait - comme le recourant - un gilet jaune de sécurité. Au demeurant, les frères H._ ont confirmé avoir vu une personne s'approcher du corps, laquelle portait une veste de sécurité jaune avec des bandes réfléchissantes.
2.2. En définitive, la cour cantonale n'a pas versé dans l'arbitraire en retenant que le recourant avait remarqué un événement anormal, qu'il avait arrêté son camion, qu'il était sorti de sa cabine et qu'il s'était approché du corps. En quittant les lieux du drame alors qu'il ne pouvait qu'être conscient d'en avoir été à l'origine, il s'est rendu coupable de violation des obligations en cas d'accident (<ref-law>). Au vu des faits constatés, c'est également à juste titre que la cour cantonale a retenu que le recourant s'était intentionnellement dérobé aux mesures d'une éventuelle incapacité de conduire, en buvant du vin blanc lors du repas le soir des faits (<ref-law>).
3.
Le recourant conteste la réparation du tort moral et les dépens qui ont été accordés à l'épouse du défunt au motif qu'il ne se serait rendu coupable d'aucun homicide par négligence. Dans la mesure où la condamnation pour homicide par négligence est confirmée, ce grief est irrecevable.
4.
Le recours doit être rejeté dans la mesure où il est recevable.
Comme ses conclusions étaient vouées à l'échec, l'assistance judiciaire ne peut être accordée (<ref-law>). Le recourant devra donc supporter les frais judiciaires (<ref-law>), dont le montant sera toutefois fixé en tenant compte de sa situation financière.

Par ces motifs, le Tribunal fédéral prononce :
1.
Le recours est rejeté dans la mesure où il est recevable.
2.
La demande d'assistance judiciaire est rejetée.
3.
Les frais judiciaires, arrêtés à 1'200 fr., sont mis à la charge du recourant.
4.
Le présent arrêt est communiqué aux parties et à la Cour d'appel pénale du Tribunal cantonal du canton de Vaud.
Lausanne, le 19 mars 2018
Au nom de la Cour de droit pénal
du Tribunal fédéral suisse
Le Président : Denys
La Greffière : Kistler Vianin